如何使用setData修改数组或对象中的某一个值

发布于 7 年前作者 xiaochao14602 次浏览最后编辑 7 年前来自 ask

newnum: [

       { ‘ske5’: 12 },

        { ‘ske6’: 162 }

      ]

请问一下,我怎么把 ‘ske5’ 的值改能 13 ?

下面是我写的,输出的结果都是12,是错误的

     console.log(this.data.newnum[0][‘ske5’])

      this.setData({

        [this.data.newnum[0][‘ske5’]]: 13

      })

      console.log(this.data.newnum[0][‘ske5’])

正确方式应该怎么写?谢谢!

2 回复
xiulanhou
xiulanhou1 楼6 年前

var ske5= this.data.newnum[0].ske5;

console.log(ske5);

var ske5Obj = “newnum[0].ske5”;

var changeObj={};

changeObj[ske5Obj]=13;

this.setData(changeObj)

var ske5 = this.data.newnum[0].ske5;

console.log(ske5);

tianjie
tianjie2 楼5 年前

我通常的做法:

this.data.newnum[‘ske5’] = 13

this.setData({newnum: this.data.newnum})