zoukankan      html  css  js  c++  java
  • javascript递归

    按照HTML结构输出以下data结构
    var data = [
            {
                name:'AAA',
                child:[
                    {name:'a1',child:[{name:'a1-1'},{name:'a1-2'}]},
                    {name:'a2'},
                    {name:'a3',child:[{name:'a3-1'},{name:'a3-2',child:[{name:'a3-2-1'},{name:'a3-2-2'}]}]}
                    ]
            },
            {
                name:'BBB',
                child:[{name:'b1'},{name:'b2'},{name:'b3'}]
            },
            {
                name:'CCC',
                child:[{name:'c1'},{name:'c2'},{name:'c3'}]
            }
          ]
          function recursive(data){
             var str = '<ul>'
             for(var i=0; i<data.length;i++){
                 str += "<li>" + data[i].name
                if(data[i].child){        //递归的结束条件
                    str += recursive(data[i].child)    //递归调用
                }
                 str += '</li>'
             }
             str += "</ul>"
             return str
          }
          console.log(recursive(data))
    递归使代码更加简洁,解决了多层循环的结构。
  • 相关阅读:
    easyui datagrid 前后台代码
    JVM
    序列化
    Android UI设计
    多线程
    泛型
    字符串
    B+树:MySql数据库索引是如何实现的
    大数据判存算法:海量数据中快速判断某个数据是否存在
    陌生单词
  • 原文地址:https://www.cnblogs.com/carry-carry/p/11624401.html
Copyright © 2011-2022 走看看