微信小程序使用 this.setData 修改 Array 的子属性值 作者: Chuwen 时间: 2021-01-16 分类: JavaScript 评论 # 假设有以下数据 ```javascript Page({ data: { cart: [ {name: '小米 11', nums: 1}, {name: 'MacBook Pro', nums: 1}, ], } }) ``` ## 现在我要将 cart 数组字段,下标为 1 对象,`nums` 改成 2 > 可以这么做 > 中括号 `[]` 一定不能少! > 中括号 `[]` 一定不能少! > 中括号 `[]` 一定不能少! ```javascript let index = 1; let key = 'cart[' + index + '].nums'; this.setData({ [nums]: 2//中括号一定不能少! }) ``` ### 还可以使用 `ES6 模板字符串` 语法简写成 > 中括号 `[]` 一定不能少! > 中括号 `[]` 一定不能少! > 中括号 `[]` 一定不能少! ```javascript let index = 1; this.setData({ [`cart[${index}].nums`]: 2//中括号一定不能少! }) ```