admin 发表于 2024-5-12 20:50:46

js 无限层级树形 原生filter实现 无限层级 树形数据结构

使用 filter用于对数组进行过滤。
它创建一个新数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。注意:filter()不会对空数组进行检测、不会改变原始数组二、语法Array.filter(function(currentValue, indedx, arr), thisValue)  其中,函数 function 为必须,数组中的每个元素都会执行这个函数。且如果返回值为 true,则该元素被保留;  函数的第一个参数 currentValue 也为必须,代表当前元素的值。   source:js对象数组   id    parentId父级ID children:子级键名
function treeData(source, id, parentId, children) {
return source.filter(father => {
    let branchArr = source.filter(child => father == child);
    branchArr.length > 0 ? father = branchArr : '';
    //返回第一层 我这里是0 实际应用根据自己项目情况修改
    return father == 0;
})
      }

页: [1]
查看完整版本: js 无限层级树形 原生filter实现 无限层级 树形数据结构