js 怎么改变嵌套数组里的值(数组中嵌套数组,向里面的数组每个对象中加一个值)

let arr = [
    {
        id:0,
        title:'A',
        list:[
            {pic:'../a.png',txt:'aaaa'},
            {pic:'../b.png',txt:'bbbbbbb'},
            {pic:'../c.png',txt:'cc'},
        ]
    },
     {
        id:1,
        title:'B',
        list:[
            {pic:'../a1.png',txt:'erse'},
            {pic:'../b1.png',txt:'dfsdf'},
            {pic:'../c1.png',txt:'gjgh'},
        ]
    },
    ......
]

需要:

{
    id:0,
    title:'A',
    list:[
        {name:'../a.png',txt:'aaaa',url:'../a.png'},
        {name:'../b.png',txt:'bbbbbbb',url:'../b.png'},
        {name:'../c.png',txt:'cc',url:'../c.png'},
    ]
},
 {
    id:1,
    title:'B',
    list:[
        {name:'../a1.png',txt:'erse',url:'.../a1.png'},
        {name:'../b1.png',txt:'dfsdf',url:'.../a1.png'},
        {name:'../c1.png',txt:'gjgh',url:'.../a1.png'},
    ]
},
......

解决办法

let todoArr=arr.map((item,index)=>{
  let newArr= item.list.reduce((prv,nex)=>{
   return prv.concat(Object.assign({},nex,{url:nex.pic}))
 },[])
// []代表初始值
    item.list= newArr;
 return {item}
})
https://www.jianshu.com/p/e375ba1cfc47

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值