數(shù)組類型Json和數(shù)組對(duì)象類型Json,無論是從名字,還是從代碼的輸出格式來看,長(zhǎng)得都非常相像,但是在實(shí)戰(zhàn)使用中,使用的方式,和使用的地方都不盡相同,通常我們使用的json格式數(shù)據(jù)都非常簡(jiǎn)單,就是一個(gè)鍵對(duì)應(yīng)一個(gè)值,非常簡(jiǎn)單的一對(duì)一關(guān)系,復(fù)雜點(diǎn)的關(guān)系也就是層層嵌套數(shù)據(jù),還沒有涉及到具體的數(shù)據(jù)類型操作。
先來說說Json對(duì)象:也是一個(gè)鍵對(duì)應(yīng)一個(gè)值,使用的是大括號(hào){ },如:{key:value}
再來說說Json數(shù)組:同樣一個(gè)鍵對(duì)應(yīng)一個(gè)值,但是用的是中括號(hào)來聲明[],如:['key'=>'val','key1'=>'val1']
JSON數(shù)組遍歷
JSON數(shù)組的操作
1、定義 var josnArry=[];
2、添加 jsonArry.push(jsonObj);
3、刪除 delete jsonArry[0]; splice(index,length):
4.循環(huán)訪問數(shù)組
JSON對(duì)象遍歷
myJson = {"name":"ji", "password":"123"}; for(var p in myJson){//遍歷json對(duì)象的每個(gè)key/value對(duì),p為key alert(p + " " + myJson[p]); }
字符串和json對(duì)象和json對(duì)象數(shù)組相互轉(zhuǎn)換
var jsonStr = "{\"userId\":\"001\"}"; // json對(duì)象字符串 var jsonArryStr = "[{\"userId\":\"001\"},{\"userId\":\"002\"}]"; // json數(shù)組字符串 var jsonObj = JSON.parse(jsonStr); // 字符串轉(zhuǎn)為json對(duì)象 var jsonArry = JSON.parse(jsonArryStr); // 字符串轉(zhuǎn)為json數(shù)組 var jsonStr = JSON.stringify(jsonObj); // json對(duì)象轉(zhuǎn)為字符串 var jsonArryStr=JSON.stringify(jsonArry);// json數(shù)組轉(zhuǎn)為字符串 alert(jsonStr); alert(jsonArryStr); alert(jsonObj.userId); alert(jsonArry[0]['userId']);
JSON.stringify(obj) 將JSON對(duì)象轉(zhuǎn)為字符串。
JSON.parse(string) 將字符串轉(zhuǎn)為JSON對(duì)象格式。