Loading... ### 原数组 ```js [ {type:1, item:'这'}, {type:1, item:'是'}, {type:2, item:'一'}, {type:3, item:'个'}, {type:3, item:'数'}, {type:2, item:'组'}, {type:3, item:'啊'} ] ``` ### 整理后 ```js [ { lable: 1, chilren: [ {type:1, item:'这'}, {type:1, item:'是'} ] }, { lable: 2, chilren: [ {type:1, item:'一'}, {type:1, item:'组'} ] }, { lable: 3, chilren: [ {type:1, item:'个'}, {type:1, item:'数'}, {type:1, item:'啊'} ] } ] ``` ### 方法 ```js // 树形结构处理 const initList = (data, type) => { const list = new Map() // 结构整理 data.forEach( item => { /* * 以type作为键值,判断是否存在 * 不存在就新建以type为键,值为[item] * 存在则获取这个键对应的[],并push(item) */ !list.has(item[type]) ? list.set(item[type],[item]) : list.get(item[type]).push(item) }) // type不为数字类型转为数组 return Array.from(list.keys()).map((item) => { return { lable: item, chilren: list.get(item) } }) } ``` 最后修改:2024 年 03 月 22 日 © 允许规范转载 赞 如果觉得我的文章对你有用,请随意赞赏