m0_72572410 2022-10-25 16:01 采纳率: 100%
浏览 20
已结题

js如何输出数组元素值

js如何将下面数组按照下面值输出name

['0', '1', '0-1', '1-1', '1-1-1']

var arr = [
           {id:1,name:'0',children:[{id:2,name:'0-1'}]},
           {id:3,name:'1',children:[{id:4,name:'1-1',children:[{id:5,name:'1-1-1'}]}]}
]

  • 写回答

1条回答 默认 最新

  • 天外飞雨道沧桑 2022-10-25 16:06
    关注

    这种输出顺序其实就是用到数据结构中,对树的广度优先遍历算法:

    // 广度优先遍历
    function broadErgodic(treeArr) {
        const arr = []
        while(treeArr.length > 0) {
            const node = treeArr.shift()
            arr.push(node.name)
            node.children && treeArr.push(...node.children)
        }
        return arr
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月2日
  • 已采纳回答 10月25日
  • 创建了问题 10月25日