js處理復雜數據格式數組嵌套對象,對象嵌套數組,reduce處理數據格式


let list=[
    {id:1,name:'a'},
    {id:1,name:'b'},
    {id:1,name:'c'},
    {id:2,name:'A'},
    {id:2,name:'B'},
    {id:2,name:'C'},

]
//對象嵌套數組--{id:[name]}
let objList=list.reduce((obj,item)=>{
    obj[item.id]?obj[item.id].push(item.name):obj[item.id]=[item.name]
    return obj
},{})
console.log(objList)
/*
{
    "1":["a","b","c"],
    "2":["A","B","C"]
}
*/

//數組嵌套對象--[{id:id,name:[name]}]
let arrList=list.reduce((arr,item)=>{
    let itemFind =arr.find(a=>(a.id==item.id))
    itemFind?itemFind.name.push(item.name): arr.push({id:item.id,name:[item.name]})
    return arr
},[])
console.log(arrList)
/*
[
    {"id":1,"name":["a","b","c"]},
    {"id":2,"name":["A","B","C"]}
]
*/ 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM