本文主要是介绍JS二维数组转树形数据,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
JS二维数组转树形数据
// 测试数据const arr = [{ id: '1', pid: '0', name: 'jack', age: 20 },{ id: '2', pid: '0', name: 'aaa', age: 20 },{ id: '3', pid: '0', name: 'bbb', age: 20 },{ id: '4', pid: '1', name: 'lili', age: 30 },{ id: '5', pid: '2', name: 'caca', age: 60 },{ id: '6', pid: '4', name: 'dddd', age: 40 },{ id: '7', pid: '5', name: 'eeee', age: 70 },];// 递归方法function tree(data, pid = '0', r = []) {data.forEach(el => {el.children = el.children || [];if (pid === el.pid) {r.push(el);tree(data, el.id, el.children);}});return r;}// 打印返回的数据console.log(tree(arr));
这篇关于JS二维数组转树形数据的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!