js實(shí)現(xiàn)數(shù)組轉(zhuǎn)樹示例
原生 封裝工具函數(shù) getTree
1.1 定義
-映射對(duì)象 map
數(shù)組 treeList=[]
1.2 遍歷后端返回的數(shù)組 list 為 每個(gè)數(shù)組對(duì)象item 添加 children 屬性 值為空數(shù)組

1.3 為映射對(duì)象 map 添加屬性 并賦值key:id值 value:item

1.4 遍歷數(shù)組對(duì)象list 當(dāng)item.pid為空時(shí) 為一級(jí)目錄 將該一級(jí)目錄數(shù)組對(duì)象 添加到treeList中

1.5 通過 item.pid獲取到 id 不為空時(shí) 獲取數(shù)組對(duì)象 pid為01

1.6 獲取 映射對(duì)象 map 獲取到 屬性名01 將該數(shù)組對(duì)象item 添加 到children中 并返回到treeList中
代碼:

結(jié)構(gòu)圖:

以上就是js實(shí)現(xiàn)數(shù)組轉(zhuǎn)樹示例的詳細(xì)內(nèi)容,更多關(guān)于js數(shù)組轉(zhuǎn)樹的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
javascript讀取xml實(shí)現(xiàn)javascript分頁
這篇文章主要介紹了javascript讀取xml數(shù)據(jù)對(duì)其實(shí)現(xiàn)javascript分頁效果,大家參考使用吧2013-12-12
微信小程序獲取位置展示地圖并標(biāo)注信息的實(shí)例代碼
這篇文章主要介紹了微信小程序獲取位置展示地圖并標(biāo)注信息的實(shí)例代碼,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-09-09
BootStrapTable服務(wù)器分頁實(shí)例解析
項(xiàng)目中經(jīng)常會(huì)使用到表格,數(shù)據(jù)量大的時(shí)候還需要進(jìn)行分頁,項(xiàng)目設(shè)計(jì)階段,我選擇了bootstrapTable的js插件,個(gè)人覺得這個(gè)框架非常好用,支持服務(wù)器端分頁,此篇主要寫的主要是關(guān)于服務(wù)器分頁,需要的朋友可以參考下2016-12-12
JS+HTML5 Canvas實(shí)現(xiàn)簡(jiǎn)單的寫字板功能示例
這篇文章主要介紹了JS+HTML5 Canvas實(shí)現(xiàn)簡(jiǎn)單的寫字板功能,結(jié)合實(shí)例形式分析了js結(jié)合HTML5 canvas特性的圖形繪制相關(guān)操作技巧,需要的朋友可以參考下2018-08-08
JavaScript defineProperty如何實(shí)現(xiàn)屬性劫持
雙向數(shù)據(jù)綁定的核心方法,主要是做數(shù)據(jù)劫持操作(監(jiān)控?cái)?shù)據(jù)變化),下面這篇文章主要給大家介紹了關(guān)于JavaScript defineProperty如何實(shí)現(xiàn)屬性劫持的相關(guān)資料,需要的朋友可以參考下2021-07-07
Clipboard.js 無需Flash的JavaScript復(fù)制粘貼庫
這篇文章主要介紹了JavaScript 內(nèi)容復(fù)制(無需flash) Clipboard.js使用方法,需要的朋友可以參考下2015-10-10

