«

Js 递归遍历Json所有的key 和 value

emer 发布于 2019-2-27 17:13   3662 次阅读     


// 遍历解析Json

function parseJson(jsonObj) {

    // 循环所有键

    for(var key in jsonObj) {

        //如果对象类型为object类型且数组长度大于0 或者 是对象 ,继续递归解析

        var element = jsonObj[key];

        if(element.length > 0 && typeof(element) == "object" || typeof(element) == "object") {

            parseJson(element);

        } else { //不是对象或数组、直接输出

            console.log("----eles -->  " + key + ":" + element + " ");

        }



    }

}


function parseJson(jsonObj,val) {
    for(var key in jsonObj) {
        //如果对象类型为object类型且数组长度大于0 或者 是对象 ,继续递归解析
        var element = jsonObj[key];
        if(key==val){
        console.log(element);
        }
        if(element.length > 0 && typeof(element) == "object" || typeof(element) == "object") {
            parseJson(element,val);
        }

    }
       }
var arr={"a":1,"b":{"c":3},"d":[{"a":'c'}]};

parseJson(arr,"a");