记一次js菜单的递归

let list = [
        {
            parentId: 0,
            id: 1
        },
        {
            parentId: 0,
            id: 2
        },
        {
            parentId: 1,
            id: 11
        },
        {
            parentId: 2,
            id: 21
        },
        {
            parentId: 11,
            id: 111
        },
        {
            parentId: 11,
            id: 112
        }
    ]

    function listToTree(list, parentId = 0){
        return list
        .filter(item => item.parentId === parentId)
        .map(item => ({...item, children: listToTree(list, item.id)}))
    }

    console.log(listToTree(list))
 
这是关于数组转树状结构的代码
posted @ 2020-12-18 11:24  wenaite  阅读(102)  评论(0)    收藏  举报