微信小程序用setData修改数组或对象中的一个属性值

在page中有如下数组

 1 data: {
 2     info:[
 3       {
 4         name:"yuki",
 5         tou:"../img/head.jpg",
 6         zGong:130,
 7         gMoney:222222
 8       },
 9       {
10         name: "yuki",
11         tou: "../img/head.jpg",
12         zGong: 130,
13         gMoney:222222
14       },
15       {
16         name: "yuki",
17         tou: "../img/head.jpg",
18         zGong: 130,
19         gMoney:222222
20       },
21       {
22         name: "yuki",
23         tou: "../img/head.jpg",
24         zGong: 130,
25         gMoney:222222
26       },
27       {
28         name: "yuki",
29         tou: "../img/head.jpg",
30         zGong: 130,
31         gMoney:222222
32       }
33     ]
34   }

需求:把info[0].gMoney修改成1

一般情况下,我们会这样写

 

但很明显,编辑器已经报错了。

 

解决方法如下:

  第一步:先用一个变量,把(info[0].gMoney)用字符串拼接起来。

  第二步:将变量写在[]里面即可。

 

具体写法如图:

1 onLoad: function () {
2       var that=this;
3       var up = "info[" + 0 + "].gMoney";//先用一个变量,把(info[0].gMoney)用字符串拼接起来
4       that.setData({
5         [up]:1
6       })
7   }

 

转载于:https://www.cnblogs.com/Mrrabbit/p/7680934.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值