JSON是行業內使用最為廣泛的數據交換格式,在很多場景都有廣泛的應用。JSON適用于進行數據交互的場景,典型的是Ajax中實現異步加載;為了支持跨平臺、數據安全等的Web Service也可以使用(API接口返回值)。
JSON(JavaScript Object Notation)是一種完全獨立于語言的、輕量級的數據交換格式。它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一個子集。JSON的官方MIME類型是application/json,文件擴展名是 .json。
優點:易于人閱讀和編寫。同時也易于機器解析和生成。支持眾多語言。
JSON建構于兩種結構:
? “名稱/值”對的集合(A collection of name/value pairs)。不同的語言中,它被理解為對象(object),紀錄(record),結構(struct),字典(dictionary),哈希表(hash table),有鍵列表(keyed list),或者關聯數組 (associative array)。
? 值的有序列表(An ordered list of values)。在大部分語言中,它被理解為數組(array)。
JSON具有以下這些形式:
Object是一個無序的“‘名稱/值'對”集合。一個對象以“{”開始,“}”結束。每個“名稱”后跟一個“:”(冒號);“‘名稱/值' 對”之間使用“,”分隔。
Array是值(value)的有序集合。一個數組以“[”開始,“]”結束。值之間使用“,”分隔。
值(value)可以是雙引號括起來的字符串(string)、數值(number)、true、false、 null、對象(object)或者數組(array)。這些結構可以嵌套。
基本類型:
string、number、 true、false、 null。
字符串(string)是由雙引號包圍的任意數量Unicode字符的集合,使用反斜線轉義。一個字符(character)即一個單獨的字符串(character string)。
JSON實例
{ "name":"Python學習者", "age":20, "course":["Java","Python"], "job":null, "url":"http://www.companysz.com"}
JavaScript
<html><head> <meta charset="utf-8"> <title>Pyhton學習者-JSON</title></head><body> <p>使用" . "訪問JSON對象</p> <p id="demo1"></p> <p>使用" [] "訪問JSON對象</p> <p id="demo2"></p><script> var obj, name, age; obj = { "name":"Python學習者", "age":20, "course":["Java","Python"], "job":null, "url":"http://www.companysz.com" } name = obj.name; document.getElementById("demo1").innerHTML = name; age = obj["age"]; document.getElementById("demo2").innerHTML = age;</script></body></html>
MongoDB
MongoDB是一種常用的NoSQL數據庫,它所有的信息都是按照文檔保存的,保存的結構就是JSON結構。
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":"張三");
其實JSON結構并不難理解,需要注意的是"key/value"中,key是string類型,要使用 ""(雙引號)。
參考資料:
在線代碼格式化:http://tool.oschina.net/codeformat/json
JSON官方網站:http://www.json.org/
以上這篇基于JSON數據格式詳解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。
新聞熱點
疑難解答