JavaScript 对象数组转换为嵌套对象 - 使用 parentId 属性
let nestedObj = {};
function findChildren(id) { let children = []; for(let i=0; i<arr.length; i++) { if(arr[i].parentId === id) { let child = { id: arr[i].id, name: arr[i].name }; let nestedChildren = findChildren(arr[i].id); if(nestedChildren.length > 0) { child.children = nestedChildren; } children.push(child); } } return children; }
for(let i=0; i<arr.length; i++) { if(arr[i].parentId === null) { nestedObj.id = arr[i].id; nestedObj.name = arr[i].name; let children = findChildren(arr[i].id); if(children.length > 0) { nestedObj.children = children; } } }
console.log(nestedObj);
原文地址: http://www.cveoy.top/t/topic/l5EU 著作权归作者所有。请勿转载和采集!