中国最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2

json教程

  • 关于 JSON
  • JSON 教程

    json格式

    JSON解析

    JSON遍历

    JSON调用

    JSON转换

    JSON获取

    JSON字符串

    JSON数组

    Jquery 遍历Json的实现代码

    阅读 (2353)
    代码如下:
    /* 
    author: liulf 
    function: 
    var __db_cpcj=vCpcj; 
    var __db_cp=vCp; 
    var vCp={"cppage":[ 
    {"cpdh":"A01000101","page":"1","ca":"1309-36-0","mc":"硫铁矿","ename":"Pyrite","bm":"黄铁矿"}, 
    {"cpdh":"A01000201","page":"1","ca":"1309-36-0","mc":"硫精砂","ename":"Pyrite concentrate;Sulfur concentrate","bm":""}, 
    {"cpdh":"A01000202","page":"1","ca":"1309-36-0","mc":"硫精矿粉","ename": 
    "Powdered pyrite concentrate;Pyrites concentrate,powder;Sulfur concentrate,powder","bm":"硫精矿"},
    {"cpdh":"A02000101","page":"1","ca":"","mc":"磷矿石","ename":"Phosphorus ore","bm":""}, 
    {"cpdh":"A02000111","page":"2","ca":"","mc":"磷矿砂","ename":"Phosphorite grit","bm":""}, 
    {"cpdh":"A02000201","page":"2","ca":"","mc":"磷矿粉","ename":"Phosphate rock powder","bm":""},
    {"cpdh":"A03000101","page":"2","ca":"12447-04-0","mc":"硼矿石","ename":"Ascharite;Boric ore","bm":"硼镁矿"}, 
    {"cpdh":"A04000101","page":"2","ca":"","mc":"钾长石","ename":"Potash feldspar;Potassium feldspars","bm":""}, 
    {"cpdh":"A04000201","page":"2","ca":"12003-63-3","mc":"长石粉","ename":"Feldspar powder","bm":""}, 
    {"cpdh":"A04000301","page":"2","ca":"","mc":"光卤石","ename":"Carnallite","bm":""} 
    ]} 
    */
    function ObjSearch() {
        this.kw = '';
        this.searchCpcj = function() {
            $(vCpcj).each(function() {});
        }
        this.searchCp = function() {
            // var json = eval(vCp.cppage) 
            // for(var i=0; i<json.length; i++) 
            // { 
            // alert(json[i].cpdh+" " + json[i].page) 
            // break; 
            // } 
            $.each(vCp.cppage, function(index, content) {
                document.write('<div>' + content.cpdh + '</div><br />');
            });
        }
    }
    

    js 如何遍历jsonc对象?其实方法很简单。 

    比如有如下json对象: 

    var obj ={”name”:”冯娟”,”password”:”123456″,”department”:”技术部”,”sex”:”女”,”old”:30}; 


    遍历方法: 
    代码如下:
    for (var p in obj) {
        str = str + obj[p] + ',';
        return str;
    }

    综合实例:

    var array = {
        "a": "abc",
        "b": [1, 2, 3, 4, 5, 6],
        "c": 3,
        "d": {
            "name": "james",
            "age": 28
        },
        "e": null,
        "f": true
    };
    var arrayObj = {
        "a": {
            "name": "kobe",
            "age": 34
        },
        "b": {
            "name": "lofo",
            "age": 28
        }
    };
    //遍历array方式1
    for (var x in array) {
        if (typeof array[x] == 'object' && array[x] != null) {
            for (var y in array[x]) {
                alert("key = " + y + " value = " + array[x][y]);
            }
        } else {
            alert("key = " + x + " value = " + array[x]); // 非array object
        }
    }
    //遍历array方式2
    $.each(array, function(k, v) {
        var a = typeof(v);
        //数组与对象为object类型,其他分别是string与number类型
        //此时的k代表a、b、c、d,v代表对应的值
        if (typeof(v) == "object") {
            //获取数组与对象后,再去遍历这个数组与对象
            $.each(v, function(k1, v1) {
                window.alert("key = " + k1 + " value=" + v1);
            });
        } else {
            window.alert("key = " + k + " value=" + v);
        }
    });
    //遍历arrayObj方式1
    for (var x in arrayObj) {
        for (var key in arrayObj[x]) {
            window.alert("key=" + key + " value=" + arrayObj[x][key]);
        }
    }
    //遍历arrayObj方式2
    $.each(arrayObj, function(key, value) {
        $.each(value, function(k, v) {
            window.alert("key=" + k + " value=" + v);
        });
    });
    //遍历arrayObj方式3
    $.each(arrayObj, function(key, value) {
        window.alert("key=" + key + " valueName=" + value.name + " valueAge=" + value.age);
    });
    
    var UserList = [
        { "UserID": 11, "Name": { "FirstName": "Truly", "LastName": "Zhu" }, "Email": "" },
        { "UserID": 12, "Name": { "FirstName": "Jeffrey", "LastName": "Richter" }, "Email": "" },
        { "UserID": 13, "Name": { "FirstName": "Scott", "LastName": "Gu" }, "Email": "" }
    ]
    $.each(UserList, function(k, v) {
        $.each(v, function(k1, v1) {
            if (typeof(v1) == "object") {
                $.each(v1, function(k2, v2) {
                    window.alert("key=" + k2 + " value=" + v2);
                });
            } else {
                window.alert("key=" + k1 + " value=" + v1);
            }
        });
    });
    
    var userArray = [
        { "UserID": 11, "Name": { "FirstName": "Truly", "LastName": "Zhu" }, "Email": "" },
        { "UserID": 12, "Name": { "FirstName": "Jeffrey", "LastName": "Richter" }, "Email": "" },
        { "UserID": 13, "Name": { "FirstName": "Scott", "LastName": "Gu" }, "Email": "" }
    ];
    for (var i in userArray) {
        for (var k in userArray[i]) {
            if (typeof userArray[i][k] == "object" && userArray[i][k] != null) {
                for (var j in userArray[i][k]) {
                    window.alert("key=" + j + "--value=" + userArray[i][k][j]);
                }
            } else {
                window.alert("key=" + k + "--value=" + userArray[i][k]);
            }
        }
    }
    

    关闭
    程序员人生