web建站教程
  1. 首页
  2. vuejs
  3. js
  4. 好玩
  5. seo教程
  6. 前端知识
  7. 百度echarts
  8. 更多
    php入门
    nodejs
    mockjs
    reactjs
    mysql
    wordpress
    织梦cms
    帝国cms
    git教程
    IT知识
    模板大全
    休息站

js数组中将有父子关系的平行数组转换成树形数据

427 ℃
     
let data = [
{id: 1, text: '清北', parentId: 0},
{id: 2, text: '浙京', parentId: 2},
{id: 3, text: '浙京', parentId: 1},
{id: 4, text: '浙京', parentId: 3},
{id: 5, text: '清北', parentId: 1},
{id: 6, text: '浙京', parentId: 0},
];
data.forEach(ele => {
  let parentId = ele.parentId;
  if (parentId === 0) {
    //parentId===0是根路径
  } else {
    //其它的扔到根路径child下面数组中.
    data.forEach(d => {
      if (d.id === parentId) {
        let childArray = d.child;
        if (!childArray) {
          childArray = []
        }
        childArray.push(ele);
        d.child = childArray;
      }
    })
  }
});
//去除重复元素
data = data.filter(ele => ele.parentId === 0);
console.log('输出结果: ', data);

//输出结果
//0: {id: 1, text: '清北', parentId: 0, child: Array(2)}
//1: {id: 6, text: '浙京', parentId: 0}

es6语法中数组的使用方法(...展开符)

php如何修改原数组(foreach循环)

js创建一个指定长度数组(根据数字显示数组长度)

js两个数组是否存在重复的元素

js根据相同key合并生成子数组children(兼容ie10)

标签: 数组, 树形数组

上面是“js数组中将有父子关系的平行数组转换成树形数据”的全面内容,想了解更多关于 js 内容,请继续关注web建站教程。

当前网址:https://ipkd.cn/webs_2163.html

声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!

当前位置: 网站首页 > js
本文共计650个字,预计阅读时长5分钟
生活小工具,收录了80多款小工具
上一篇: 推荐一个可以查询老黄历的网站,可以根据五行取名!
下一篇: 详细介绍HTTP状态码不同之处的原因(什么原因导致的)
x 打工人ai神器