zoukankan      html  css  js  c++  java
  • Javascript 数组转无限级分类

    递归

    var arr = [
        {"id":1,"parent_id":0,"name":"Foods"},
        {"id":2,"parent_id":1,"name":"Fruits"},
        {"id":3,"parent_id":2,"name":"apple"},
        {"id":4,"parent_id":2,"name":"orange"},
        {"id":5,"parent_id":2,"name":"tomato"},
        {"id":6,"parent_id":1,"name":"Vegetables"},
        {"id":7,"parent_id":6,"name":"carrot"},
        {"id":8,"parent_id":6,"name":"cabbage"},
        {"id":9,"parent_id":6,"name":"potato"},
        {"id":10,"parent_id":6,"name":"lettuce"},
        {"id":11,"parent_id":0,"name":"Cars"}
    ];
    
    function convert(arr, id){
        var res = [];
        for (var i = 0; i < arr.length; i++) {
            if (arr[i].parent_id == id) {
                res.push(arr[i]);
                // var func = eval(arguments.callee.name);
                // arr[i].child = func(arr, arr[i].id);
                arr[i].child = convert(arr,arr[i].id);
            }
        }
        return res;
    }
    
    console.log(convert(arr, 0));
    
    

    https://www.jianshu.com/p/e8f3d71bd9c6

  • 相关阅读:
    HDU 1429
    HDU 1622
    HDU 3335
    HDU 4160
    HDU 1350
    HDU 5086
    HDU 1300
    HDU 3047
    HDU 3038
    HDU 5100
  • 原文地址:https://www.cnblogs.com/fazero/p/11892189.html
Copyright © 2011-2022 走看看