1. 程式人生 > >轉換資料格式

轉換資料格式

cates = [{cate1:"銷售",cate2:"銷售主管"},{cate1:"銷售",cate2:"銷售代表"},{cate1:"司機",cate2:"火車司機"},{cate1:"司機",cate2:"客車司機"}]

兩種方案

當時做的時候花時間最多的就是push 需要注意兩點,1 push的物件必須是一個數組,2.對name2push的時候注意newCates的陣列

第二種情況順序打亂
cates = [{cate1:"銷售",cate2:"銷售主管"},{cate1:"銷售",cate2:"銷售代表"},{cate1:"司機",cate2:"火車司機"},{cate1:"司機",cate2:"客車司機"},{cate1:"銷售",cate2:"銷售代表2"}]

arr=[]
newcate = []
cates = [{cate1:"銷售",cate2:"銷售主管"},{cate1:"銷售",cate2:"銷售代表"},{cate1:"司機",cate2:"火車司機"},{cate1:"司機",cate2:"客車司機"},{cate1:"銷售",cate2:"銷售代表"}]
cates.map((item,index)=>{
if(arr.indexOf(item.cate1) == -1){
    arr.push(item.cate1)
    newcate.push({firstCate:item.cate1,secondCates:[]})
}
arr.map((item2,i)=>{
    if(item2 == item.cate1){
    newcate[i].secondCates.push(item.cate2)
}
})
})
newcate = []
cates = [{cate1:"銷售",cate2:"銷售主管"},{cate1:"銷售",cate2:"銷售代表"},{cate1:"司機",cate2:"火車司機"},{cate1:"司機",cate2:"客車司機"},{cate1:"銷售",cate2:"銷售代表"}]
cates.map((item,index)=>{
if(JSON.stringify(newcate).indexOf(item.cate1) == -1){
    newcate.push({firstCate:item.cate1,secondCates:[]})
}
newcate.map((item2,i)=>{
    if(item2.firstCate == item.cate1){
    item2.secondCates.push(item.cate2)
}
})
})