美文网首页
在多级数组对象中根据id取值,循环加递归

在多级数组对象中根据id取值,循环加递归

作者: 帆_44fc | 来源:发表于2019-12-20 09:54 被阅读0次

在多级数组对象中根据id取值,循环加递归2019.12.20

<!DOCTYPE html>
<html lang="en">
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>递归</title>
</head>

<body>
    <script>
        var options = [{
            value: 'zhinan',
            label: '指南',
            price: '100',
            children: [{
                value: 'shejiyuanze',
                label: '设计原则',
                price: '1002',
                children: [{
                    value: 'yizhi',
                    label: '一致',
                    price: '1003——1',
                    children: [{
                        value: 'yizhi——11',
                        label: '一致',
                        price: '1004——1',
                    }, {
                        value: 'fankui——111',
                        label: '反馈',
                        price: '1004——2',
                    }, ]
                }, {
                    value: 'fankui',
                    label: 'hhhhh',
                    price: '1003——2',
                }, {
                    value: 'xiaolv',
                    label: '效率',
                    price: '1003——3',
                }, {
                    value: 'kekong',
                    label: '可控',
                    price: '1003——4',
                }]
            }, ]
        }, {
            value: 'zhinan222222',
            label: '指南222222',
            price: '200',
        }];
        var ids = ['kekong', 'xiaolv','zhinan222222'];
        var id = 'kekong';

        // options.map((optVal,index)=>{
        //     // console.log(optVal,index)
        //     if(optVal.value==id){
        //         console.log(optVal)
        //     }else{
        //     }
        // })
        var idVal
        getValData(options);

        function getValData(data) {
            if (data) {
                data.map((optVal, index) => {
                    if (optVal.value == id) {
                        idVal=optVal;
                        console.log(idVal,optVal)
                    } else {
                        getValData(optVal.children)
                    }
                })
            } else {
                return;
            }
        }
        console.log(idVal);
        // --------------------
        // ids.map((idsVal,idsIndex)=>{
        //     console.log(ids)
        // })
    </script>
</body>

</html>

相关文章

  • 在多级数组对象中根据id取值,循环加递归

    在多级数组对象中根据id取值,循环加递归2019.12.20

  • JS中将对象转化为数组

    如何把一个对象转化为数组,实例: 对象的两种取值方式JS中对象有两种取值方式,通过在.后面直接加属性名取值,这也是...

  • vue循环与显示

    vue循环 v-for循环普通数组 数组索引值 循环对象数组 循环对象,值(1,ts,man)键(id,name,...

  • Vue ES6 数组删除

    .根据id删除对象数组中的对象 var resultData = originData.filter((item)...

  • 根据数组中对象属性进行去重

    根据数组中对象属性进行去重 先遍历循环原数组,声明一个计数器,用于记录新数组的遍历次数,在新数组的循环遍历中判断,...

  • js 高深用法

    1.在对象数组中根据对象的key找到该对象: 找到如下rules数组中对象 id为2的name 解决: 2.快速遍...

  • vue循环指令:v-for

    循环数组: 循环对象数组 遍历对象 循环数字 数字从1开始v-for循环加key作为唯一标识,在单选框前插时不会出...

  • 根据指定id取出数组中指定对象

    需求:根据Id取出数组中指定的对象

  • 前端小白成长02--解构

    解构 数组解构(根据位置)数组解构要按顺序取值,不需要的要空加逗号...三个点语法只能用在数组最后取值当解构的le...

  • JS数组操作

    对象数组排序 标签(空格分隔): JS 一个对象数组 根据id进行正序排序 数组分割

网友评论

      本文标题:在多级数组对象中根据id取值,循环加递归

      本文链接:https://www.haomeiwen.com/subject/qvybnctx.html