JSON 概述
JSON (JavaScript Object Notation) 是一種輕量級的數(shù)據(jù)交換格式,用來序列化對象益涧、數(shù)組锈锤、數(shù)值、字符串饰躲、布爾值和 null牙咏。
JSON 比較容易地閱讀和理解臼隔,并且機器也很容易地解析和生成嘹裂。它基于 JavaScript 編程語言標準 ECMA-262 第 3 版 - 1999 年 12 月的一個子集,但與之不同:JavaScript 不是 JSON摔握,JSON 也不是 JavaScript寄狼。
JSON 是一種完全獨立于語言的文本格式,使用的是多種語言的約定氨淌,包括 C泊愧、 C++、C#盛正、Java删咱、JavaScript、Perl豪筝、Python 等等痰滋,這些特性使 JSON 成為一種理想的數(shù)據(jù)交換語言。
JSON 語法
一個 JSON 文件续崖,可以包含如下類型的值:
1. Object
對象是一組無序的鍵值對敲街, 以 {
左大括號開始,以 }
右大括號結(jié)束严望。并且每個名稱后跟冒號 :
多艇,多個鍵值對使用 ,
逗號分隔。
注意一:鍵必須是由雙引號括起來的字符串像吻;
注意二:值只能是 object
峻黍、array
复隆、string
姆涩、number
、true
阵面、false
、null
其中之一仑扑;
注意三:最后一個鍵值對后不能有逗號置鼻。
{
"number": 100,
"string": "abc",
"boolean": true,
"null": null,
"array": [1, false, null, "abc"],
"object": {}
}
2. Array
數(shù)組是值的有序集合箕母。 數(shù)組以 [
左括號開始,以 ]
右括號結(jié)束钙勃。 值由 ,
逗號分隔聂喇。
注意一:值只能是 object
、array
希太、string
、number
矾湃、true
堕澄、false
、null
其中之一坞嘀;
注意二:最后一個鍵值對后不能有逗號惊来。
{
"array": [1, false, null, "abc", {}]
}
3. String
字符串是零個或多個 Unicode 字符的序列,用雙引號括起來继准,使用反斜杠轉(zhuǎn)義矮男。
"\\ \" \" \/ \b \f \n \r \t \u12fF hello world 123"
4. number
數(shù)字禁止出現(xiàn)前導零毡鉴,如果有小數(shù)點, 則后面至少跟著一位數(shù)字。
1.02e10
5. true/false
true
6. null
null
6. Whitespace
可以在任何一對標記之間插入空格憎瘸。