JSON 數據類型
JSON 數據類型
JSON 格式支持以下數據類型:
類型 | 描述 |
---|---|
數字型(Number) | JavaScript 中的雙精度浮點型格式 |
字符串型(String) | 雙引號包裹的 Unicode 字符和反斜杠轉義字符 |
布爾型(Boolean) | true 或 false |
數組(Array) | 有序的值序列 |
值(Value) | 可以是字符串,數字,true 或 false,null 等等 |
對象(Object) | 無序的鍵:值對集合 |
空格(Whitespace) | 可用于任意符號對之間 |
null | 空 |
1. 數字型
- JavaScript 中的雙精度浮點型格式,取決于實現。
- 不能使用八進制和十六進制格式。
- 在數字中不能使用 NaN 和 Infinity。
下表展示了數字類型:
類型 | 描述 |
---|---|
整形(Integer) | 數字1-9,0和正負數 |
分數(Fraction) | 分數,比如 .3,.9 |
指數(Exponent) | 指數,比如 e,e+,e-,E,E+,E- |
語法:
var json-object-name = { string : number_value, .......}
示例:
下面的示例展示了數字類型,其值不應該使用引號包裹:
var obj = {marks: 97}
2. 字符串型
- 零個或多個雙引號包裹的 Unicode 字符以及反斜杠轉義序列。
- 字符就是只有一個字符的字符串,長度為 1。
下表展示了字符串類型:
類型 | 描述 |
---|---|
" | 雙引號 |
\ | 反斜線 |
/ | 斜線 |
b | 退格符 |
f | 換頁符 |
n | 換行符 |
r | 回車符 |
t | 水平制表符 |
u | 四位十六進制數字 |
語法:
var json-object-name = { string : "string value", .......}>
示例:
下面的示例展示了字符串數據類型:
var obj = {name: 'Amit'}
3. 布爾型
它包含 true 和 false 兩個值。
語法:
var json-object-name = { string : true/false, .......}
示例:
var obj = {name: 'Amit', marks: 97, distinction: true}
數組
- 它是一個有序的值集合。
- 使用方括號閉合,這意味著數組以 [ 開始,以 ] 結尾。
- 值使用 ,(逗號)分割。
- 數組索引可以以 0 或 1 開始。
- 當鍵名是連續的整數時應該使用數組。
語法:
[ value, .......]
示例:
下面的示例展示了一個包含多個對象的數組:
{ "books": [ { "language":"Java" , "edition":"second" }, { "language":"C++" , "lastName":"fifth" }, { "language":"C" , "lastName":"third" } ] }<
4. 對象
- 它是一個無序的名/值對集合。
- 對象使用大括號閉合,以 '{' 開始,以 '}' 結尾。
- 每個名稱后面都跟隨一個 ':'(冒號),名/值對使用 ,(逗號)分割。
- 鍵名必須是字符串,并且不能同名。
- 當鍵名是任意字符串時應該使用對象。
語法:
{ string : value, .......}
示例:
下面的例子展示了對象:
{ "id": "011A", "language": "JAVA", "price": 500, }
5. 空格
可以在任意一對符號之間插入。可以添加用來讓代碼更可讀。下面的例子展示了使用空格和不使用空格的聲明:
語法:
{string:" ",....}
示例:
var i= " sachin"; var j = " saurav"
null
意味著空類型。
語法:
null
示例:
var i = null; if(i==1) { document.write("<h1>value is 1</h1> "); } else { document.write("<h1>value is null</h1> "); }
6. JSON 值
包括:
- 數字(整型和浮點型)
- 字符串
- 布爾值
- 數組
- 對象
- null
語法:
String | Number | Object | Array | TRUE | FALSE | NULL
示例:
var i =1; var j = "sachin"; var k = null;