数组转换成树形格式数组"/>
前端将二维数组转换成树形格式数组
原始数据:
最终得到的数据:
具体实现代码:倒推(最后一个数据)的思路得到数组
function childData(list,i){const arr = []//最后一个数组if(i<list.length){list[i].forEach(item=>{const obj = {name:'',prop:'',child:[]}obj['name'] = itemobj['prop'] = itemobj['child'] = []arr.push(obj)})}return arr
}
function transListDataToTreeData(list,i) {//共n条数据const arr = list[i] // 第一层数组 1if(arr){const news = []arr.forEach(item=>{let obj = {name:item,prop:item,child:[]}const child = childData(list,i+1)if(child.length > 0){obj.child = transListDataToTreeData(list,i+1)}else{obj.child = child}news.push(obj)})return news}else{return []}
}
更多推荐
前端将二维数组转换成树形格式数组
发布评论