是什麼JSON,簡單介紹
JSON 是什麼
1、JSON,全稱是 JavaScript Object Notation,即 JavaScript 物件標記法。
2、JSON 是一種輕量級(Light-Weight)、基於文字的(Text-Based)、可讀的(Human-Readable)格式。
3、JSON 的名稱中雖然帶有 JavaScript,但這是指其語法規則是參考 JavaScript 物件的,而不是指只能用於 JavaScript 語言。
4、JSON 無論對於人,還是對於機器來說,都是十分便於閱讀和書寫的,而且相比 XML (另一種常見的資料交換格式),檔案更小,因此迅速成為網路上十分流行的交換格式。
5、近年來 JavaScript 已經成為瀏覽器上事實上的標準語言,JavaScript 的風靡,與 JSON 的流行也有密切的關係。
6、因為 JSON 本身就是參考 JavaScript 物件的規則定義的,其語法與 JavaScript 定義物件的語法幾乎完全相同。
7、JSON 格式的創始人聲稱此格式永遠不升級,這就表示這種格式具有長時間的穩定性,10 年前寫的檔案,10 年後也能用,沒有任何相容性問題。
JSON 的語法規則
JSON 的語法規則十分簡單,可稱得上“優雅完美”,總結起來有:
1)- 陣列(Array)用方括號(“[]”)表示。
2)- 物件(Object)用大括號(”{}”)表示。
3)- 名稱/值對(name/value)組合成陣列和物件。
4)- 名稱(name)置於雙引號中,值(value)有字串、數值、布林值、null、物件和陣列。
5)- 並列的資料之間用逗號(“,”)分隔
例項
{
"name": "Geoff Lui",
"age": 26
}
JSON 和 XML
JSON 常被拿來與 XML 做比較,因為 JSON 的誕生本來就多多少少要有取代 XML 的意思。相比 XML,JSON 的優勢如下:
1)- 沒有結束標籤,長度更短,讀寫更快
2)- 能夠直接被Script 直譯器解析
3)- 可以使用陣列
對比JSON和XML,比較相同與相異之處(二者表達相同的內容):
符合JSON語法規則:
{
"name": "Geoff Lui",
"age": 26,
"friends": ["Lily", "Lucy", "Gwen"]
}
符合XML語法規則:
<root>
<name>Geoff Lui</name>
<age>26</age>
<friends>Lily</friends>
<friends>Lucy</friends>
<friends>Gwen</friends>
</root>
JSON 解析和生成
在 JavaScript 中,有兩個方法與此相關: JSON.parse 和 JSON.stringify 。
示例程式碼:
<script>
var str = ‘{"name": "Geoff Lui","age": 26,}’;
var obj = ISON.parse(str);
console.log(obj);
var jsonstr = ISON.stringify(obj);
console.log(jsonstr);
</script>
執行結果:
1、JSON,全稱是 JavaScript Object Notation,即 JavaScript 物件標記法。
2、JSON 是一種輕量級(Light-Weight)、基於文字的(Text-Based)、可讀的(Human-Readable)格式。
3、JSON 的名稱中雖然帶有 JavaScript,但這是指其語法規則是參考 JavaScript 物件的,而不是指只能用於 JavaScript 語言。
4、JSON 無論對於人,還是對於機器來說,都是十分便於閱讀和書寫的,而且相比 XML (另一種常見的資料交換格式),檔案更小,因此迅速成為網路上十分流行的交換格式。
5、近年來 JavaScript 已經成為瀏覽器上事實上的標準語言,JavaScript 的風靡,與 JSON 的流行也有密切的關係。
6、因為 JSON 本身就是參考 JavaScript 物件的規則定義的,其語法與 JavaScript 定義物件的語法幾乎完全相同。
7、JSON 格式的創始人聲稱此格式永遠不升級,這就表示這種格式具有長時間的穩定性,10 年前寫的檔案,10 年後也能用,沒有任何相容性問題。
JSON 的語法規則
JSON 的語法規則十分簡單,可稱得上“優雅完美”,總結起來有:
1)- 陣列(Array)用方括號(“[]”)表示。
2)- 物件(Object)用大括號(”{}”)表示。
3)- 名稱/值對(name/value)組合成陣列和物件。
4)- 名稱(name)置於雙引號中,值(value)有字串、數值、布林值、null、物件和陣列。
5)- 並列的資料之間用逗號(“,”)分隔
例項
{
"name": "Geoff Lui",
"age": 26
}
JSON 和 XML
JSON 常被拿來與 XML 做比較,因為 JSON 的誕生本來就多多少少要有取代 XML 的意思。相比 XML,JSON 的優勢如下:
1)- 沒有結束標籤,長度更短,讀寫更快
2)- 能夠直接被Script 直譯器解析
3)- 可以使用陣列
對比JSON和XML,比較相同與相異之處(二者表達相同的內容):
符合JSON語法規則:
{
"name": "Geoff Lui",
"age": 26,
"friends": ["Lily", "Lucy", "Gwen"]
}
符合XML語法規則:
<root>
<name>Geoff Lui</name>
<age>26</age>
<friends>Lily</friends>
<friends>Lucy</friends>
<friends>Gwen</friends>
</root>
JSON 解析和生成
在 JavaScript 中,有兩個方法與此相關: JSON.parse 和 JSON.stringify 。
示例程式碼:
<script>
var str = ‘{"name": "Geoff Lui","age": 26,}’;
var obj = ISON.parse(str);
console.log(obj);
var jsonstr = ISON.stringify(obj);
console.log(jsonstr);
</script>
執行結果:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25876358/viewspace-2156014/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- JSON簡單介紹JSON
- JSON物件簡單介紹JSON物件
- 簡單介紹一下 JSONJSON
- RPC簡單介紹RPC
- Python簡單介紹Python
- KVM簡單介紹
- RMI簡單介紹
- HTML簡單介紹HTML
- HTML 簡單介紹HTML
- JavaScript 簡單介紹JavaScript
- CSS 簡單介紹CSS
- ajax簡單介紹
- SVG簡單介紹SVG
- Clickjacking簡單介紹
- 【Pandas】簡單介紹
- Map簡單介紹
- ActiveMQ簡單介紹MQ
- JSON 介紹JSON
- 1、Swing簡介:Swing是什麼?
- Git_簡單介紹Git
- jQuery Validate簡單介紹jQuery
- <svg>元素簡單介紹SVG
- 簡單介紹 ldd 命令
- 禪道簡單介紹
- Webpack 的簡單介紹Web
- Apache Curator簡單介紹Apache
- spark簡單介紹(一)Spark
- Flutter key簡單介紹Flutter
- 簡單介紹克隆 JavaScriptJavaScript
- AOP的簡單介紹
- Ansible(1)- 簡單介紹
- JSON是什麼,有什麼用,怎麼寫jsonJSON
- Flownet 介紹 及光流的簡單介紹
- form表單的簡單介紹ORM
- JSON簡介和Ajax簡介--bea這兩篇文章介紹的不錯JSON
- FFmpeg是什麼,主要功能介紹
- 什麼是整型?Python整型詳細介紹Python
- 什麼是JPA?Java Persistence API簡介JavaAPI