_createProps: function (props){
let colProp = [], rowProp = [], propsAry = [], temp = [];
if (props[0]){
props[0].childsCurGoods.forEach(function(n,i){
colProp.push({id:n.id,name:n.name,buyNum:0});
});
propsAry = colProp;
if (props[1]){
props[1].childsCurGoods.forEach(function (n, i) {
temp[i] = [];
for (let j = 0; j < colProp.length;j++){
temp[i].push(colProp[j]);
}
rowProp.push({ id: n.id, name: n.name, child: temp[i]})
});
propsAry = rowProp;
}
}
return propsAry;
}```
在小程序某一页面有这么一函数,目的是将一段数据过滤我需要的如下数据格式:
res:[
{
"id":1,
"name":"www",
"child":[
{
"id":2,
"name":"ssss",
"buyNum":23
},
{
"id":2,
"name":"ssss",
"buyNum":23
},
{
"id":2,
"name":"ssss",
"buyNum":23
},
{
"id":2,
"name":"ssss",
"buyNum":23
}
]
}
]
现在的问题是我一改变其中一个一个对象中的chile的某个值,就会导致其他对象的child发生改变。比如我通过`res[0].child[0].buyNum = 3`,会导致res[0].child[1]、res[0].child[2]...中的buyNum的值都变成3。
使用Object.assign拷贝一下: