国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

js 實現(xiàn) list轉(zhuǎn)換成tree的方法示例(數(shù)組到樹)

2019-11-19 11:01:04
字體:
供稿:網(wǎng)友

目標(biāo):

JS 將有父子關(guān)系的平行數(shù)組轉(zhuǎn)換成樹形數(shù)據(jù)

方法:雙重遍歷,一次遍歷parentId,一次遍歷id == parendId;

該方法應(yīng)該能很容易被想到,實現(xiàn)起來也一步一步可以摸索出來;

const oldData = [  {id:1,name:'boss',parentId:0},  {id:2,name:'lily',parentId:1},  {id:3,name:'jack',parentId:1},  {id:4,name:'john',parentId:2},  {id:5,name:'boss2',parentId:0},]function listToTree(oldArr){  oldArr.forEach(element => {    let parentId = element.parentId;    if(parentId !== 0){      oldArr.forEach(ele => {        if(ele.id == parentId){ //當(dāng)內(nèi)層循環(huán)的ID== 外層循環(huán)的parendId時,(說明有children),需要往該內(nèi)層id里建個children并push對應(yīng)的數(shù)組;          if(!ele.children){            ele.children = [];          }          ele.children.push(element);        }      });    }  });  console.log(oldArr) //此時的數(shù)組是在原基礎(chǔ)上補充了children;  oldArr = oldArr.filter(ele => ele.parentId === 0); //這一步是過濾,按樹展開,將多余的數(shù)組剔除;  console.log(oldArr)  return oldArr;}listToTree(oldData);

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持武林網(wǎng)。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 尚义县| 保山市| 观塘区| 高邮市| 萨嘎县| 瑞丽市| 望奎县| 德庆县| 龙门县| 绥芬河市| 平阴县| 含山县| 搜索| 邯郸市| 马关县| 平遥县| 寿宁县| 新乡市| 萨嘎县| 德化县| 荆州市| 吴旗县| 开平市| 祥云县| 稻城县| 舞钢市| 望城县| 滦平县| 凌源市| 靖安县| 乌恰县| 永靖县| 阿荣旗| 纳雍县| 同德县| 滕州市| 巴青县| 顺义区| 安泽县| 伊金霍洛旗| 昌黎县|