1.直接对象名点属性名,如:obj.value = 2
2.将属性名作为下标使用,如:obj[value] = 2
两者都是可以的。
Page({
/**
* 页面的初始数据
*/
data: {
statusList: [{
statusId: '0',
isClicked: true
},
{
statusId: '1',
isClicked: false
},
{
statusId: '2',
isClicked: false
},
],
}
})
//点击状态按钮
clickListTopRow: function(e) {
let choseChange = "statusList[" + e.currentTarget.dataset.index + "].isClicked"
this.setData({
[choseChange]: true
})
},
var JSONObject = {data:[{count:335, goods:'直接访问'},
{count:310, goods:'邮件营销'},
{count:234, goods:'联盟广告'}
]}
// 取到data所对应的json数组
var JSONArray = JSONObject.data
// 声明一个数组,用于存储多个json对象
var JSONArray2 = []
// 声明一个json对象,用于临时存储json数据
var tempJson = {}
// 遍历数组
for (var i in JSONArray) {
// 清空json对象
tempJson = {}
// 获取key=count所对应的值并添加到一个新的json对象中
// 新的json对象的key为value
// 添加json元素(key)并赋值(value)
tempJson['value'] = JSONArray[i].count
// 将该json对象添加到数组中
JSONArray2[i] = tempJson
// 再次清空json对象
// 获取key=goods所对应的值并添加到一个新的json对象中
tempJson = {}
tempJson['name'] = JSONArray[i].goods
JSONArray2[i] = tempJson
}
// 改变JSONObject中key=data的值
JSONObject.data = JSONArray2