基于JSON數(shù)據(jù)格式詳解
JSON是行業(yè)內(nèi)使用最為廣泛的數(shù)據(jù)交換格式,在很多場(chǎng)景都有廣泛的應(yīng)用。JSON適用于進(jìn)行數(shù)據(jù)交互的場(chǎng)景,典型的是Ajax中實(shí)現(xiàn)異步加載;為了支持跨平臺(tái)、數(shù)據(jù)安全等的Web Service也可以使用(API接口返回值)。
JSON(JavaScript Object Notation)是一種完全獨(dú)立于語(yǔ)言的、輕量級(jí)的數(shù)據(jù)交換格式。它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一個(gè)子集。JSON的官方MIME類型是application/json,文件擴(kuò)展名是 .json。
優(yōu)點(diǎn):易于人閱讀和編寫。同時(shí)也易于機(jī)器解析和生成。支持眾多語(yǔ)言。
JSON建構(gòu)于兩種結(jié)構(gòu):
· “名稱/值”對(duì)的集合(A collection of name/value pairs)。不同的語(yǔ)言中,它被理解為對(duì)象(object),紀(jì)錄(record),結(jié)構(gòu)(struct),字典(dictionary),哈希表(hash table),有鍵列表(keyed list),或者關(guān)聯(lián)數(shù)組 (associative array)。
· 值的有序列表(An ordered list of values)。在大部分語(yǔ)言中,它被理解為數(shù)組(array)。
JSON具有以下這些形式:
Object是一個(gè)無(wú)序的“‘名稱/值'對(duì)”集合。一個(gè)對(duì)象以“{”開始,“}”結(jié)束。每個(gè)“名稱”后跟一個(gè)“:”(冒號(hào));“‘名稱/值' 對(duì)”之間使用“,”分隔。
Array是值(value)的有序集合。一個(gè)數(shù)組以“[”開始,“]”結(jié)束。值之間使用“,”分隔。
值(value)可以是雙引號(hào)括起來(lái)的字符串(string)、數(shù)值(number)、true、false、 null、對(duì)象(object)或者數(shù)組(array)。這些結(jié)構(gòu)可以嵌套。
基本類型:
string、number、 true、false、 null。
字符串(string)是由雙引號(hào)包圍的任意數(shù)量Unicode字符的集合,使用反斜線轉(zhuǎn)義。一個(gè)字符(character)即一個(gè)單獨(dú)的字符串(character string)。
JSON實(shí)例
{
"name":"Python學(xué)習(xí)者",
"age":20,
"course":["Java","Python"],
"job":null,
"url":"http://m.fzitv.net"
}
JavaScript
<html>
<head>
<meta charset="utf-8">
<title>Pyhton學(xué)習(xí)者-JSON</title>
</head>
<body>
<p>使用" . "訪問JSON對(duì)象</p>
<p id="demo1"></p>
<p>使用" [] "訪問JSON對(duì)象</p>
<p id="demo2"></p>
<script>
var obj, name, age;
obj = {
"name":"Python學(xué)習(xí)者",
"age":20,
"course":["Java","Python"],
"job":null,
"url":"http://m.fzitv.net"
}
name = obj.name;
document.getElementById("demo1").innerHTML = name;
age = obj["age"];
document.getElementById("demo2").innerHTML = age;
</script>
</body>
</html>
MongoDB
MongoDB是一種常用的NoSQL數(shù)據(jù)庫(kù),它所有的信息都是按照文檔保存的,保存的結(jié)構(gòu)就是JSON結(jié)構(gòu)。
db.students.insert({"name" : "張三" , "sex" : "男" , "age" : 18 , "score" : 85 });
db.students.insert({"name" : "李四" , "sex" : "女" , "age" : 21 , "score" : 93 });
db.students.insert({"name" : "王五" , "sex" : "女" , "age" : 19 , "score" : 68 });
db.students.find("name":"張三");
其實(shí)JSON結(jié)構(gòu)并不難理解,需要注意的是"key/value"中,key是string類型,要使用 ""(雙引號(hào))。
參考資料:
在線代碼格式化:http://tool.oschina.net/codeformat/json
JSON官方網(wǎng)站:http://www.json.org/
以上這篇基于JSON數(shù)據(jù)格式詳解就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- JSON 數(shù)據(jù)格式詳解
- JQuery 解析多維的Json數(shù)據(jù)格式
- JSON 數(shù)據(jù)格式介紹
- Json對(duì)象與Json字符串互轉(zhuǎn)(4種轉(zhuǎn)換方式)
- js 將json字符串轉(zhuǎn)換為json對(duì)象的方法解析
- 解析JSON對(duì)象與字符串之間的相互轉(zhuǎn)換
- JS對(duì)象與JSON格式數(shù)據(jù)相互轉(zhuǎn)換
- JavaScript中json對(duì)象和string對(duì)象之間相互轉(zhuǎn)化
- JS解析json數(shù)據(jù)并將json字符串轉(zhuǎn)化為數(shù)組的實(shí)現(xiàn)方法
- js實(shí)現(xiàn)數(shù)組轉(zhuǎn)換成json
- json對(duì)象與數(shù)組以及轉(zhuǎn)換成js對(duì)象的簡(jiǎn)單實(shí)現(xiàn)方法
- json數(shù)據(jù)格式常見操作示例
相關(guān)文章
如何檢測(cè)JavaScript中的死循環(huán)示例詳解
這篇文章主要給大家介紹了關(guān)于如何檢測(cè)JavaScript中死循環(huán)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08
深入了解JavaScript中l(wèi)et/var/function的變量提升
這篇文章主要介紹了深入了解JavaScript中l(wèi)et/var/function的變量提升,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下2022-07-07
bootstrap導(dǎo)航、選項(xiàng)卡實(shí)現(xiàn)代碼
這篇文章主要為大家詳細(xì)介紹了bootstrap導(dǎo)航、選項(xiàng)卡的實(shí)現(xiàn)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-12-12
js和jquery實(shí)現(xiàn)tab狀態(tài)欄切換效果
這篇文章主要為大家詳細(xì)介紹了js和jquery實(shí)現(xiàn)tab狀態(tài)欄切換效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-08-08
JavaScript實(shí)現(xiàn)樓梯滾動(dòng)特效(jQuery實(shí)現(xiàn))
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)樓梯滾動(dòng)特效,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-09
JS 清除字符串?dāng)?shù)組中,重復(fù)元素的實(shí)現(xiàn)方法
下面小編就為大家?guī)?lái)一篇JS 清除字符串?dāng)?shù)組中,重復(fù)元素的實(shí)現(xiàn)方法。小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧2016-05-05
JavaScript模板引擎應(yīng)用場(chǎng)景及實(shí)現(xiàn)原理詳解
這篇文章主要介紹了JavaScript模板引擎應(yīng)用場(chǎng)景及實(shí)現(xiàn)原理,結(jié)合實(shí)例形式詳細(xì)分析了javascript模版引擎的具體應(yīng)用場(chǎng)景、實(shí)現(xiàn)原理、相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下2018-12-12
完美實(shí)現(xiàn)js焦點(diǎn)輪播效果(一)
這篇文章主要為大家詳細(xì)介紹了完美實(shí)現(xiàn)js焦點(diǎn)輪播效果的相關(guān)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03

