js处理目录树简单方法

let arr = [
    {
        id:1,
        pid:0,
        title:"第一层一级"
    },
    {
        id:2,
        pid:1,
        title:"第一层二级"
    },
    {
        id:3,
        pid:0,
        title:"第二层一级"
    },
    {
        id:4,
        pid:3,
        title:"第二层二级"
    },
    {
        id:5,
        pid:4,
        title:"第二层三级"
    },
    {
        id:6,
        pid:0,
        title:"第二层三级"
    }
]

arr.forEach((item)=>{
    if(item.pid!==0){
        const findParent = arr.find(i=>i.id === item.pid);
        if(findParent){
            if(!Array.isArray(findParent.children)){
                findParent.children = []
            }
            findParent.children.push(item)
        }
    }
})

const treeArr = arr.filter((i)=>i.pid === 0);

console.log(treeArr)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JavaScript目录代码是一种用于呈现和组织层级结构数据的代码。它可以在网页上创建一个可交互的目录视图,使用户能够展开和折叠层级目录,以便更好地浏览和定位所需的内容。 通常,使用JavaScript目录代码需要以下步骤: 1. 创建HTML结构:首先,在HTML文件中创建一个容器元素,用于显示目录。这可以是一个<div>元素或其他任何具有唯一标识的元素。例如:<div id="tree"></div> 2. 编写JavaScript代码:接下来,在JavaScript文件中编写代码来实现目录功能。首先,创建一个表示目录的数据结构,例如一个包含节点和子节点的对象数组。 3. 递归构建目录:使用递归算法,遍历目录数据结构,将每个节点动态地添加到HTML容器中。对于每个节点,创建一个包含节点内容的元素,并将其附加到其父节点元素上。还可以为父节点和子节点添加相应的样式或事件处理程序。 4. 添加交互功能:为每个目录节点添加交互功能,使用户可以展开或折叠子节点。这可以通过在点击节点时切换其展开/折叠状态来实现。可以使用事件处理程序来监听节点点击事件,并在每次展开/折叠操作后更新节点的样式。 5. 样式和自定义:可以根据需求对目录进行自定义设置,如样式、图标、字体等。可以使用CSS来为目录节点和容器元素添加样式,并使用JavaScript代码来动态添加相应的类或属性。 总而言之,JavaScript目录代码可以帮助我们有效地组织和展示层级结构数据,使用户能够更好地浏览和搜索内容。它是一种常用的界面组件,在许多网站和应用程序中都得到广泛应用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值