**將一個(gè)沒有層級(jí)的扁平對(duì)象,轉(zhuǎn)換為樹形結(jié)構(gòu)**
* * * * *
~~~
let data = [{
"province": "浙江",
"city": "杭州",
"name": "西湖"
}, {
"province": "四川",
"city": "成都",
"name": "錦里"
}, {
"province": "四川",
"city": "成都",
"name": "方所"
}, {
"province": "四川",
"city": "阿壩",
"name": "九寨溝"
}]
~~~
轉(zhuǎn)換成如下數(shù)據(jù)結(jié)構(gòu):
~~~
let tree = [{
"value": "浙江",
"children": [{
"value": "杭州",
"children": [{
"value": "西湖"
}]
}]
}, {
"value": "四川",
"children": [{
"value": "成都",
"children": [{
"value": "錦里"
}, {
"value": "方所"
}]
}, {
"value": "阿壩",
"children": [{
"value": "九寨溝"
}]
}]
}]
~~~
參照`trie`樹:
~~~
~~~
- ES6
- ES6字段轉(zhuǎn)換小技巧
- 聲明變量
- 函數(shù)
- 遞歸函數(shù)
- 函數(shù)聲明和函數(shù)表達(dá)式
- 前端環(huán)境配置
- VScode
- VScode設(shè)置選項(xiàng)
- 遍歷
- 遍歷目錄
- 遞歸算法
- 遍歷算法
- 遍歷引用類型
- 異步編程
- 函數(shù)返回值
- 遍歷數(shù)組(異步)
- JS特殊值(args、this、require...)
- arguments
- 數(shù)據(jù)結(jié)構(gòu)與算法
- 扁平化數(shù)據(jù)轉(zhuǎn)樹狀數(shù)據(jù)(數(shù)組型)
- 扁平化數(shù)據(jù)轉(zhuǎn)樹狀數(shù)據(jù)(對(duì)象型)
- 嚴(yán)格模式
- 嚴(yán)格模式下的this
- JavaScript
- 內(nèi)置類型
- this
- typeof 操作符
- 原型與原型鏈
- 執(zhí)行上下文棧
- apply和call
