這是理解和編(bian)寫 JSON 格式配置文件的(de)快(kuai)速參考備忘(wang)單。
是一種基于文本的輕量級開放標準,專為(wei)人類可(ke)讀的數據交換而設計。
.json
application/json
{
"name": "Jason",
"age": 39,
"height": 1.92,
"gender": "M",
"salary": 70000,
"married": true,
"children": [
{"name": "Tom", "age": 9, "gender":"M"},
{"name": "Ava", "age": 7, "gender":"F"}
]
}
類型 | 描述 |
---|---|
Number | 雙精度浮點 |
String | 字符系列 |
Boolean | “true”或“false” |
Array | 有序的值序列 |
Value | 字符串、數字、布爾值、空值等 |
Object | 鍵/值對的無序集合 |
null | Null 或 Empty |
\" | 雙引號 Double quote |
\\ | 反斜杠 Backslash |
\/ | 正斜杠 Forward slash |
\b | 退格 Backspace |
\f | 換頁 Form feed |
\n | 換行 Newline |
\r | 回車 Carriage return |
\t | 標簽 Tab |
\u | 后跟四個十六進制數字 |
{
"url": "//jaywcjlove.github.io",
"msg" : "Hi,\n\"Quick Reference\"",
"intro": "Share quick reference and cheat sheet for developers."
}
{ "foo": 'bar' }
Have to be delimited by double quotes
類型 | 說明 |
---|---|
Integer | 數字 1-9、0 和正數或負數 |
Fraction | 0.3、3.9 等分數 |
Exponent | 指數,如 e、e+、e-、E、E+、E |
{
"positive" : 12,
"negative" : -1,
"fraction" : 10.25,
"exponent" : 1.0E+2,
"zero" : 0
}
{ "foo": 0xFF }
在JSON中,只能使用十進制文(wen)字
{
"color": "Purple",
"id": "210",
"composition": {
"R": 70,
"G": 39,
"B": 89
},
"empty_object": {}
}
用逗號分隔的(de)多個(ge)鍵/值對(dui)
[1, 2, 3, 4, 5]
以 [
開始并以 ]
結束
{
"children": [
{ "name": "Jimmy Smith", "age": 15 },
{ "name": "Sammy Sosa", "age": 12 }
]
}
{
"attributes": ["a1", "a2"],
"methods": ["getter", "setter"],
"empty_array": []
}
{
"my_sequences": [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9, 0],
[10, 11]
]
}
{
"Mark McGwire": {
"hr": 65,
"avg": 0.278
},
"Sammy Sosa": {
"hr": 63,
"avg": 0.288
}
}
{
"Jack": {
"id": 1,
"name": "Franc",
"salary": 25000,
"hobby": ["a", "b"],
"location": {
"country": "A", "city": "A-A"
}
}
}
let myObject = {
"name": "Jason",
"last": "Doe",
"age": 39,
"gender": "M",
"salary": 70000,
"married": true
};
myObject.name | "Jason" |
myObject["name"] | "Jason" |
myObject.age | 39 |
myObject.other | undefined |
myObject[0] | undefined |
let myObject = {
"ref": {
"name": 0,
"last": 1,
"age": 2,
"gender": 3,
"salary": 4,
"married": 5
},
"jdoe": [
"Jason",
"Doe",
39,
"M",
70000,
true
],
"jsmith": [
"Tom",
"Smith",
42,
"F",
80000,
true
]
};
myObject.ref.age | 2 |
myObject["ref"]["age"] | 2 |
myObject.jdoe | ["Jason", "Doe", 39 ...] |
myObject.jsmith[3] | "F" |
myObject[1] | undefined |
let myArray = [
{
"name": "Jason",
"last": "Doe",
"age": 39,
"gender": "M",
"salary": 70000,
"married": true
},
{
"name": "Tom",
"last": "Smith",
"age": 42,
"gender": "F",
"salary": 80000,
"married": true
},
{
"name": "Amy",
"last": "Burnquist",
"age": 29,
"gender": "F",
"salary": 60000,
"married": false
}
];
myArray[0] | { "name": "Jason", ...} |
myArray[1].name | "Tom" |
myArray[1][2] | 42 |
myArray[3] | undefined |
myArray[3].gender | TypeError: Cannot read... |
let myArray = [
"Jason",
"Doe",
39,
"M",
70000,
true
];
myArray[1] | "Doe" |
myArray[5] | true |
myArray[6] | undefined |