js将树状结构数组转为普通数组

使用递归将树状结构数组转为普通数组

js将树状结构数组转为普通数组_第1张图片
js将树状结构数组转为普通数组_第2张图片

<script>
    let arr = [
        {
            name: '山东省',
            id: 1,
            parentId: 0,
            children: [
                {
                    name: '济南市',
                    id: 2,
                    parentId: 1,
                },{
                    name: '青岛市',
                    id: 3,
                    parentId: 1,
                }
            ]
        }
    ]

    function conversionList(dataList,newarr){
        if (dataList && dataList.length){
            dataList.forEach(item=>{
                let obj = {
                    name: item.name,
                    id: item.id,
                    parentId: item.parentId
                }
                newarr.push(obj)

                if (item.children && item.children.length){
                    conversionList(item.children,newarr);
                }
            })
        }
        return newarr
    }
    let list = conversionList(arr,[])
    console.log(list,'list')
</script>

你可能感兴趣的:(js,javascript,开发语言)