首頁 >web前端 >js教程 >收集json解析的四種方法分享_javascript技巧

收集json解析的四種方法分享_javascript技巧

WBOY
WBOY原創
2016-05-16 17:03:31965瀏覽

Json在Web開發的用處非常廣泛,作為資料傳遞的載體,如何解析Json傳回的資料是非常常用的。以下介紹下四種解析Json的方式:

Part 1

複製程式碼 程式碼如下:

var list1 = [1,3,4];
alert(list1[1]);
var list2 = [{"name":"leamiko","xing":"lin"}];
alert(list2[0]["xing"] )
alert(list2[0].xing)

Part 2

複製程式碼 代碼如下:

代碼如下:
    "china":{
        "hangzhou":{"item":"1"},
    ":{"item":"3"}
    },
    "America":{
        "aa":{"item item":"2"}  
    },
    "Spain":{
        "dd":{"item 2"},
        "ff":{"item":"3"}  
    }
};
for(var countryObj in value)
};
for(var countryObj in valueue countryObj ":
")
    //沒用的for(var cityObj in value.countryObj)
    for(var cityObj in value[countryObj])
    {
        document.write( '    ' cityObj "
");
        for(var itemObj in value[countryObj][cityObj])")  
        }
    }  
}  



解釋:
countryObj 為value物件的一個屬性明,value[countryObj] 為value物件的屬性值這裡為一個json物件例如b,value[countryObj][cityObj]為josn物件b的屬性值它也是一個json物件,於是value[countryObj][cityObj]["item"]便可以取到json物件暫時成為c的值,或value[countryObj][cityObj].item。

總之分清是json還是array這是很關鍵的。

Part 3

複製程式碼

程式碼如下:var value2 = {
    "china":[
        {"name":"hangzhou", "item":"1"},
             {"name":"sichuan", "item":"3"}

    ],
    "America":[
   12"},
        {"name":"bb", "item":"2"}
    ],
    "Spain”:[  " item":"1"},
        {"name":"dd", "item":"23"},
        {"name":"ee", "item":"3"}
    ]
};

for (var countryObj in value2)
{
    document.write(countryObj ":    {
        //可用document.write("  " value2[countryObj][cityObj].item "
");" );  
    }
}

解釋:

countryObj 為value2物件的屬性名,value2[countryObj] 為value2物件屬性值在本例中它是一個數組,cityObj 是數組的一個元素,它又是另外一個json對象,於是,value2[countryObj] [cityObj]["name"]就存取到該物件的name的屬性值,也可以透過value2[countryObj][cityObj].name 存取該屬性值。

Part 4

複製程式碼 代碼如下:

代碼如下:
    "china":[
        {"name":"hangzhou", "item":"1"},
  "},
        {"name":"sichuan", "item":"3"}
    ],
    "America ":"12"},
        {"name":"bb", "item":"2"}
    ],
   ", "item":"1"},
        {"name":"dd", "item":"23"},
        {"name":"ee", "item" "}
    ]
};

    for (var countryObj in value2)
    {        //document .write("  " value2[countryObj].length);
        for (var i = 0;i ");  
        }
    }



解釋:

countryObj value2物件的屬性名,value2[countryObj] 屬性值 本例中是一個數組,value2[countryObj].length 數組的長度,value2[countryObj][i]數組的項 == json物件。
value2[countryObj][i]["name"] 取得name的值,也可以用value2[countryObj][i].name 來取得name的值。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn