js、vue 树状图 添加 索引值

https://img.mukewang.com/5b701be00001e80307670497.jpg\

{        "name": "第一层",
        index:1,        "children":[
            {                "name":"第二层",
                index:2,
            },{                "name":"第二层",
                index:2,                "children":[
                    {                        "name":"第三层",
                        index:3,
                    },{                        "name":"第三层",
                        index:3,
                    },
                ]
            }
        ]
    }

想在这个树状图中添加他们每一层的index,


慕的地8271018
浏览 1481回答 2
2回答

慕村9548890

最终写法。    function fun(arry){        for(let i in arry){             let menu = arry[i];            if(!menu['num']){                 menu['num'] = 1;             }            if(menu['children'].length && menu['children']){                for(let j in menu['children']){                     menu['children'][j]['num'] = arry[i]['num'] + 1;                    fun(menu['children'])                 }             }         }     }

慕尼黑8549860

var ary = {    "name": "第一层",    index:1,    "children":[         {            "name":"第二层",            index:2,         },{            "name":"第二层",            index:2,            "children":[                 {                    "name":"第三层",                    index:3,                 },{                    "name":"第三层",                    index:3,                 },             ]         }     ] }function level(obj) {    if (!obj.level) {         obj.level = 1     }    if (!obj.children || !obj.children.length) {        return     }     obj.children.forEach(function(el) {         el.level = obj.level + 1         level(el)     }) } level(ary)console.log(ary)var ary = [{    "name": "第一层",    index:1,    "children":[         {            "name":"第二层",            index:2,         },{            "name":"第二层",            index:2,            "children":[                 {                    "name":"第三层",                    index:3,                 },{                    "name":"第三层",                    index:3,                 },             ]         }     ] }, {    "name": "第一层",    index:1,    "children":[         {            "name":"第二层",            index:2,         },{            "name":"第二层",            index:2,            "children":[                 {                    "name":"第三层",                    index:3,                 },{                    "name":"第三层",                    index:3,                 },             ]         }     ] } ]function level(ary) {     ary.forEach(function(el) {        if (!el.level) {             el.level = 1         }        if (!el.children || !el.children.length) {            return         }                  el.children.forEach(function(item) {             item.level = el.level + 1         })                  level(el.children)     }) } level(ary)console.log(ary)一个对象,一个数组
打开App,查看更多内容
随时随地看视频慕课网APP