js数据处理

clipboard.png
arr怎么变成arr2,其中variation中属性是动态变化的 ,可能为 "variation": [{

        "color": "black",
        "sort": 0,
        "test":1
    }, {
        "size": "20CM",
        "sort": 1,
        "test":3
    }]
阅读 2.3k
4 个回答
arr.map(item => {
    let relust = []
    let sort = 0
    for(let key in item.variation){
        relust.push({sort: sort, [key]: item.variation[key]})
        sort++
    }
    
    item.variation = relust
    return item
})
for (let i = 0;i<arr.length;i++){
 for (let j = 0;j<length;i++){
  arr[i].variation[j].sort = i
  arr[i].variation[j].test= i
 }
}

不知道你动态的规律是什么,我这里就设置为i了

新手上路,请多包涵
arr2 = arr1.map(item=>{
    let Obj = {}
    let variation = item.variation
    Obj.variation = Object.keys(variation).map((key,index)=>({[key]:variation[key],sort:index}));
    return Obj
})
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题