每個(gè)JSON對(duì)象都是由鍵值對(duì)組成的。但有時(shí)候我們需要在對(duì)象中存儲(chǔ)多個(gè)相似的數(shù)據(jù)元素。這時(shí),我們可以使用數(shù)組。same的數(shù)據(jù)元素以逗號(hào)隔開,放在中括號(hào)[]中。這個(gè)數(shù)組可以嵌套在一個(gè)JSON對(duì)象里:
var data = { "name": "張三", "age": 23, "hobbies": ["足球", "籃球", "游泳"], "friends": [ {"name": "李四", "age": 21}, {"name": "王五", "age": 24}, {"name": "趙六", "age": 22} ] };
在這個(gè)例子中,我們定義了一個(gè)包含四個(gè)key-value對(duì)的JSON對(duì)象。對(duì)象中的"hobbies"鍵對(duì)應(yīng)一個(gè)數(shù)組,該數(shù)組包含三個(gè)字符串元素:"足球","籃球","游泳"。"friends"鍵對(duì)應(yīng)另外一個(gè)數(shù)組,該數(shù)組包含了三個(gè)對(duì)象,每個(gè)對(duì)象有兩個(gè)key-value對(duì):"name"和"age"。
我們可以像訪問普通數(shù)組那樣,使用與數(shù)組元素相關(guān)聯(lián)的索引號(hào)來訪問JSON數(shù)組中的元素:
console.log(data.hobbies[1]); // 輸出 "籃球" console.log(data.friends[0].name); // 輸出 "李四"
要主意的是,如果想要在JSON數(shù)組中添加或刪除元素,需要直接通過索引號(hào)進(jìn)行操作。例如,如果要將data.friends數(shù)組中的第二個(gè)元素刪除,我們可以這樣做:
data.friends.splice(1, 1);
這將刪除數(shù)組中從索引1開始的1個(gè)元素。如果要添加一個(gè)新元素,我們可以使用push()函數(shù):
data.friends.push({"name": "魏七", "age": 20});
這將在數(shù)組的末尾添加一個(gè)新元素。