javascript - 关于json数组递归的问题
PHP中文网
PHP中文网 2017-05-16 12:59:57
[PHP讨论组]

var arr=[{

    name:"总队",
    id:"1",
    alias:"zongdui",
    children:[{
        name:"第一支队",
        id:"2",
        parent_id:"1",
        children:[
            {
                name:"第一大队",
                id:"4",
                parent_id:"2"    
            }
        ]},
        {
        name:"第二支队",
        id:"3",
        parent_id:"1",
        children:[
            {
                name:"第二大队",
                id:"5",
                parent_id:"2"
            }
        ]
    }]  

}]

这个json 怎么递归出 name 和 id ?求代码

PHP中文网
PHP中文网

认证0级讲师

全部回复(3)
过去多啦不再A梦
var ret = [];
while (arr != []) {
    ret.push({
        'name': arr[0]['name'],
        'id': arr[0]['id'],
    )
    arr = arr['children'];
}
console.log(ret);
过去多啦不再A梦
arr2 = []
function arr_mat(arr){
    for(var i=0;i<arr.length;i++){
        if(arr[i].children.length > 0){
        //     // arr2.push({
        //     //     'name':arr[i].children.name
        //     // });
            console.log(arr[i].children);

            arr_mat(arr[i].children);
        }
    }
}
arr_mat(arr);

为什么我这样不行呢

巴扎黑

可以使用json_decode函数把json字符串转成数组操作

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号