圖一:原數(shù)據(jù),圖二:期望得到的樹形數(shù)據(jù)

圖1

圖2
toTree(data)?{//-data為原數(shù)據(jù)數(shù)組
??????let?result?=?[];
??????if?(!Array.isArray(data))?{
????????return?result;
??????}
??????data.forEach((item)?=>?{
????????delete?item.children;
??????});
??????let?map?=?{};
??????data.forEach((item)?=>?{
????????map[item.id]?=?item;
??????});
??????data.forEach((item)?=>?{
????????let?parent?=?map[item.parentid];
????????if?(parent)?{
??????????(parent.children?||?(parent.children?=?[])).push(item);
????????}?else?{
??????????result.push(item);
????????}
??????});
??????//?console.log(12,result)//最新數(shù)據(jù)
??????this.result?=?result;
??????return?result;
????},