javascript
JSON总结笔记
一.json對(duì)象語(yǔ)法
{"name":"runoob", "alexa":10000,"site":null }
JSON 對(duì)象使用在大括號(hào){}中書(shū)寫(xiě)。
對(duì)象可以包含多個(gè)?key/value(鍵/值)對(duì)。
key 必須是字符串,value 可以是合法的 JSON 數(shù)據(jù)類型(字符串, 數(shù)字, 對(duì)象, 數(shù)組, 布爾值或 null)。
key 和 value 中使用冒號(hào)(:)分割。
每個(gè) key/value 對(duì)使用逗號(hào)(,)分割。
二.json 循環(huán)對(duì)象
你可以使用 for-in 來(lái)循環(huán)對(duì)象的屬性:
實(shí)例
var myObj = {"name":"runoob", "alexa":10000,"site":null };
for (x in myObj) {
???document.getElementById("demo").innerHTML += x +"<br>";
}
在 for-in 循環(huán)對(duì)象的屬性時(shí),使用中括號(hào)[]來(lái)訪問(wèn)屬性的值:
實(shí)例
var myObj = {"name":"runoob", "alexa":10000,"site":null };
for (x in myObj) {
document.getElementById("demo").innerHTML+= myObj[x] + "<br>";
}
三.json對(duì)象修改值
可以使用點(diǎn)號(hào)(.)來(lái)修改 JSON 對(duì)象的值:
myObj.sites.site1 ="www.google.com";
可以使用中括號(hào)([])來(lái)修改 JSON 對(duì)象的值:
myObj.sites["site1"] ="www.google.com";
四.JSON數(shù)組
1.數(shù)組作為 JSON 對(duì)象
實(shí)例
["Google", "Runoob", "Taobao"]
JSON 數(shù)組在中括號(hào)中書(shū)寫(xiě)。
JSON 中數(shù)組值必須是合法的 JSON 數(shù)據(jù)類型(字符串, 數(shù)字, 對(duì)象, 數(shù)組, 布爾值或 null)。
JavaScript 中,數(shù)組值可以是以上的 JSON 數(shù)據(jù)類型,也可以是 JavaScript 的表達(dá)式,包括函數(shù),日期,及?undefined。
2. 嵌套 JSON 對(duì)象中的數(shù)組
myObj = {
???"name":"網(wǎng)站",
???"num":3,
???"sites": [
???????{ "name":"Google", "info":["Android", "Google 搜索","Google 翻譯" ] },
???????{ "name":"Runoob", "info":[ "菜鳥(niǎo)教程", "菜鳥(niǎo)工具", "菜鳥(niǎo)微信" ] },
???????{ "name":"Taobao", "info":[ "淘寶", "網(wǎng)購(gòu)" ] }
???]
}
我們可以使用 for-in 來(lái)循環(huán)訪問(wèn)每個(gè)數(shù)組:
實(shí)例
for (i in myObj.sites) {
???x += "<h1>" +myObj.sites[i].name + "</h1>";
???for (j in myObj.sites[i].info) {
???????x += myObj.sites[i].info[j] + "<br>";
???}
}
3.修改數(shù)組值
你可以使用索引值來(lái)修改數(shù)組值:
實(shí)例
myObj.sites[1] = "Github";
4.刪除數(shù)組元素
我們可以使用 delete 關(guān)鍵字來(lái)刪除數(shù)組元素:
實(shí)例
delete myObj.sites[1];
五. JSON.parse()
JSON 通常用于與服務(wù)端交換數(shù)據(jù)。
在接收服務(wù)器數(shù)據(jù)時(shí)一般是字符串。
我們可以使用 JSON.parse() 方法將數(shù)據(jù)轉(zhuǎn)換為 JavaScript 對(duì)象。
語(yǔ)法
JSON.parse(text[,reviver])
參數(shù)說(shuō)明:
1.?????text:必需, 一個(gè)有效的 JSON 字符串。
2.?????reviver:可選,一個(gè)轉(zhuǎn)換結(jié)果的函數(shù), 將為對(duì)象的每個(gè)成員調(diào)用此函數(shù)。
六. JSON.stringify()
JSON 通常用于與服務(wù)端交換數(shù)據(jù)。
在向服務(wù)器發(fā)送數(shù)據(jù)時(shí)一般是字符串。
我們可以使用 JSON.stringify() 方法將 JavaScript 對(duì)象轉(zhuǎn)換為字符串。
語(yǔ)法
JSON.stringify(value[,replacer[, space]])
參數(shù)說(shuō)明:
·????????value:
必需,一個(gè)有效的 JSON 字符串。
·????????replacer:
可選。用于轉(zhuǎn)換結(jié)果的函數(shù)或數(shù)組。
如果 replacer 為函數(shù),則 JSON.stringify 將調(diào)用該函數(shù),并傳入每個(gè)成員的鍵和值。使用返回值而不是原始值。如果此函數(shù)返回 undefined,則排除成員。根對(duì)象的鍵是一個(gè)空字符串:""。
如果 replacer 是一個(gè)數(shù)組,則僅轉(zhuǎn)換該數(shù)組中具有鍵值的成員。成員的轉(zhuǎn)換順序與鍵在數(shù)組中的順序一樣。當(dāng) value 參數(shù)也為數(shù)組時(shí),將忽略 replacer 數(shù)組。
·????????space:
可選,文本添加縮進(jìn)、空格和換行符,如果 space 是一個(gè)數(shù)字,則返回值文本在每個(gè)級(jí)別縮進(jìn)指定數(shù)目的空格,如果 space 大于 10,則文本縮進(jìn) 10 個(gè)空格。space 有可以使用非數(shù)字,如:\t。
?
轉(zhuǎn)載于:https://www.cnblogs.com/youth-dream/p/7219463.html
新人創(chuàng)作打卡挑戰(zhàn)賽發(fā)博客就能抽獎(jiǎng)!定制產(chǎn)品紅包拿不停!總結(jié)
- 上一篇: Python中的eval()、exec(
- 下一篇: 12个JavaScript技巧