javascript
json解析对应的value为null_JSON 学习笔记第一天——初识
1. 什么是JSON
- JSON 是 JavaScript Object Notation 簡(jiǎn)寫,是一種輕量級(jí)的數(shù)據(jù)交換格式。
- JSON 是 JS 對(duì)象的字符串表示法,它使用純文本表示一個(gè) JS 對(duì)象的信息,本質(zhì)是一個(gè)字符串。
- JSON 與 XML 文檔相比較,JSON 格式的數(shù)據(jù)比 XML 更加易于讀取,解析速度更快,而且JSON存儲(chǔ)的數(shù)據(jù)比XML更小;沒(méi)有XML文檔復(fù)雜的標(biāo)簽。
- JSON 獨(dú)立于編程語(yǔ)言和平臺(tái)之外,支持各種不同的編程語(yǔ)言進(jìn)行JSON解析。
2. JSON 的表示
JSON 數(shù)據(jù)支持兩種表示,分別是對(duì)象表示、數(shù)組表示。
2.1 對(duì)象表示法
對(duì)象表示法是在大括號(hào) { } 中進(jìn)行書寫,一個(gè)JSON對(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 對(duì)象表示法 */obj = { "name":"runoob", "alexa":10000, "site":null , "address":"henan-xinyang", "Tel":12345678900}JSON對(duì)象表示法
2.2 數(shù)組表示法
JSON 數(shù)組在中括號(hào) [ ] 中書寫,JSON 中數(shù)組值必須是合法的 JSON 數(shù)據(jù)類型(字符串, 數(shù)字, 對(duì)象, 數(shù)組, 布爾值或 null),JavaScript 中,數(shù)組值可以是以上的 JSON 數(shù)據(jù)類型,也可以是 JavaScript 的表達(dá)式,包括函數(shù),日期,及 undefined 。
/* 數(shù)組表示法 */arrObj = [ "HeNan", "XinYang", "MyHome" ]json數(shù)組表示法
2.3 嵌套表示
JSON數(shù)據(jù)格式非常靈活,可以在一個(gè)對(duì)象里嵌套一個(gè)數(shù)組,也可以在數(shù)組里嵌套一個(gè)對(duì)象或另外一個(gè)數(shù)組。
/* JSON 的嵌套表示以及訪問(wèn)格式 *//* 1. 對(duì)象屬性的值value可以是一個(gè)數(shù)組 */obj1 = { "username":"Tom", "age":20, "address":["shanghai","jiading","hongshilu"] }/* 數(shù)組大小知道前提下:訪問(wèn)讀取 "jiading" */var x = obj1.address[1];/* 數(shù)組大小未知時(shí):for-in 循環(huán)讀取 */for (i in obj1.address) { x += obj1.address[i] + "";}/* 2. JSON 對(duì)象中數(shù)組可以包含另外一個(gè)數(shù)組,或者另外一個(gè) JSON 對(duì)象 */ obj2= { "username":"網(wǎng)站", "age":3, "address": [ { "province":"shanghai", "city":[ "jiading", "hongshilu"] }, { "province":"henan", "city":[ "xinyang", "xixian"] } ] }/* for-in 遍歷訪問(wèn)每個(gè)元素值 */for (i in obj2.address) { x += "
" + obj2.address[i].province+ "
"; for (j in obj2.address[i].city) { x += obj2.address[i].city[j] + ""; }}/* 根據(jù)索引訪問(wèn)其中一個(gè) : 如 xixian */var xx = obj2.address[1].city[1];/* 3. 對(duì)象屬性值可以是一個(gè)對(duì)象 */obj3 = { "username":"馬云", "salary":100, "address":{ "province":"上海", "city","嘉定紅世路" } }var x1 = obj3.address.province + obj3.address["city"];
json嵌套表示
3. JSON 的轉(zhuǎn)換
- JSON.parse() 將服務(wù)端返回的JSON字符串格式的數(shù)據(jù)轉(zhuǎn)換成JSON對(duì)象進(jìn)行訪問(wèn),這個(gè)字符串必須嚴(yán)格是JSON格式的。
/* 服務(wù)端返回的json字符串在前端解析成JSON對(duì)象 */
var obj = JSON.parse('{ "username":"老王", "salary":10000, "city":"日本" }');
var x = obj.uesrname;
- JSON.stringify() 用于向服務(wù)端提交數(shù)據(jù),將JavaScript對(duì)象轉(zhuǎn)成符合JSON格式的字符串。
var obj = { "username":"老王", "salary":10000, "city":"日本"};
var jsonStr= JSON.stringify(obj); /* 前端可以將 jsonStr 字符串發(fā)送到服務(wù)端 */
今天就簡(jiǎn)單的講解下JSON相關(guān)知識(shí),熟能生巧,只有多練習(xí),多運(yùn)用,才能發(fā)現(xiàn)更多的問(wèn)題。
更多學(xué)習(xí)可以關(guān)注我的CSDN博客 https://blog.csdn.net/qq_31414433
希望自己接下來(lái)能堅(jiān)持寫下去,分享更多!收獲更多!
給自己打個(gè)氣!!!
總結(jié)
以上是生活随笔為你收集整理的json解析对应的value为null_JSON 学习笔记第一天——初识的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 6s和xs大小对比(苹果iphone6s
- 下一篇: html颜色代码对照表