vue关于通过下标更改数组的理解

案例1:通过下标更改数组失败

<template>
  <div>
    <el-button @click="handlerMe2"> 改变 arr </el-button>
    <div> {{ arr }}--arr </div>
  </div>
</template>
<script>
export default {
 data() {
     return {
        arr:['11,22',33]
     }
 },
 methods:{
    handlerMe2(){ 
      this.arr[0]='改变了'  //更改失败
    }
 }
};
</script>

案例2:通过下标更改数组成功

<template>
   <div>
	<el-button @click="handlerMe1"> 改变listArr1</el-button>
	<div> listArr1--  {{ listArr1}} </div>
   </div>
</template>
<script>
export default {
data() {
   return {
      listArr1:[
	{name:'詹飒1', age:19},
	{name:'詹飒2', age:119},
      ],
    }
},

methods:{
   handlerMe1(){
	this.listArr1[0].age='改变了' //更改成功! 

   },
}
};
</script>

发现问题-解释问题

我们都知道在vue中,通过下标修改数组会更改失败的。
为什么代码   this.listArr1[0].age='改变了' 却更改成功?
而 this.arr[0]='改变了' 更改失败?

原因很简单: this.listArr1[0].age='改变了' 是通过下标更改的是对象而不是数组,因此可以更改成功
而  this.arr[0]='改变了' 这才是通过下标更改的是数组
posted @   南风晚来晚相识  阅读(565)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
点击右上角即可分享
微信分享提示