是什么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)- 能夠直接被
JavaScript 解釋器解析
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>
執行結果: