猿问

一个有多级的json对象,删除对象是空的键值,觉得可以用递归,怎么实现

let arrn=[

        {

            "MENU_URL": "serviceManage",

            "MENU_ID": "8619ca0b6fbc42649a27475e339d5d4a",

            "MENU_INFO": [

                {

                    "MENU_URL": "userInfo",

                    "MENU_ID": "104a580029c54e139210b7e87dca6d89",

                    "MENU_INFO": [],

                    "MENU_NAME": "用户信息"

                }

            ],

            "MENU_NAME": "业务管理"

        },

        {

            "MENU_URL": "serviceManage/recordQuery",

            "MENU_ID": "d379e3f38cb3472ab18287034f32ef46",

            "MENU_INFO": [

                {

                    "MENU_URL": "dashboard",

                    "MENU_ID": "104a580029c54e139210b7e87dca6d89",

                    "MENU_INFO": [

                        {

                            "MENU_URL": "dashboard",

                            "MENU_ID": "104a580029c54e139210b7e87dca6d89",

                            "MENU_INFO": [],

                            "MENU_NAME": "监控面板222"

                        }

                    ],

                    "MENU_NAME": "监控面板111"

                },

                {

                    "MENU_URL": "dashboard",

                    "MENU_ID": "104a580029c54e139210b7e87dca6d89",

                    "MENU_INFO": [],

                    "MENU_NAME": "监控面板333"

                }

            ],

            "MENU_NAME": "订购信息查询"

        }

    ]

    let tmparr=arrn.map(function (value) {

        if (value.MENU_INFO.length===0){

            delete value.MENU_INFO

        }else{

            value.MENU_INFO.map(function (val) {

                if (val.MENU_INFO.length===0){

                    delete val.MENU_INFO

                }

            })

        }

        return value

    })

    console.log(tmparr)

就是MENU_ID为空的时候,把这个key给删除了,一级一级向下。现在可以实现到第三级,总不能一直判断下去吧,有多少级也不一定呢,有没有高手指点指点


富国沪深
浏览 566回答 1
1回答
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答