JSON

JSON中文網(wǎng):http://www.json.org.cn/

JSON(JavaScript Object Notation) 是一種輕量級的數(shù)據(jù)交換格式。它使得人們很容易的進(jìn)行閱讀和編寫。同時也方便了機(jī)器進(jìn)行解析和生成。它是基于JavaScript Programming Language,Standard ECMA-262 3rd Edition - December 1999的一個子集。 JSON采用完全獨(dú)立于程序語言的文本格式,但是也使用了類C語言的習(xí)慣(包括C, C++, C#, Java, JavaScript, Perl, Python等)。這些特性使JSON成為理想的數(shù)據(jù)交換語言。

JSON基于兩種結(jié)構(gòu):

“名稱/值”對的集合(A collection of name/value pairs)。不同的編程語言中,它被理解為對象(object),紀(jì)錄(record),結(jié)構(gòu)(struct),字典(dictionary),哈希表(hash table),有鍵列表(keyed list),或者關(guān)聯(lián)數(shù)組 (associative array)。

值的有序列表(An ordered list of values)。在大部分語言中,它被實現(xiàn)為數(shù)組(array),矢量(vector),列表(list),序列(sequence)。

這些都是常見的數(shù)據(jù)結(jié)構(gòu)。目前,絕大部分編程語言都以某種形式支持它們。這使得在各種編程語言之間交換同樣格式的數(shù)據(jù)成為可能。

JSON具有以下這些形式:

[

{"城市":"北京","面積":16800,"人口":1600},

{"城市":"上海","面積":6400,"人口":1800}

]

對象(object)是一個無序的“‘名稱/值’對”集合。一個對象以“{”(左括號)開始,“}”(右括號)結(jié)束。每個“名稱”后跟一個“:”(冒號);“‘名稱/值’ 對”之間使用“,”(逗號)分隔。string字符串

{"城市":"北京","面積":16800,"人口":1600}

數(shù)組(array)是值(value)的有序集合。一個數(shù)組以“[”(左中括號)開始,“]”(右中括號)結(jié)束。值之間使用“,”(逗號)分隔。

[

["北京",16800,1600],

["上海",6400,1800]

]

值(value)可以是雙引號括起來的字符串(string)、數(shù)值(number)、true、false、null、對象(object)或者數(shù)組(array)。這些結(jié)構(gòu)可以嵌套。

字符串(string)是由雙引號包圍的任意數(shù)量Unicode字符的集合,使用反斜線轉(zhuǎn)義。一個字符(character)即一個單獨(dú)的字符串(character string)。

JSON的字符串(string)與C或者Java的字符串非常相似。

數(shù)值(number)也與C或者Java的數(shù)值非常相似。只是JSON的數(shù)值沒有使用八進(jìn)制與十六進(jìn)制格式。

同時,可以在任意標(biāo)記之間添加空白。

點(diǎn)擊下面各種語言,可以查看各自的JSON實現(xiàn):

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容