前往
大廳
主題

JSON格式簡介

LF(小魚) | 2022-05-08 15:40:00 | 巴幣 1002 | 人氣 155


一、JSON簡介
JSON 是一種資料格式,可用來做為資料溝通或儲存,以文字方式儲存,所以也容易閱讀,視用途也可使用不同編碼格式,常用的編碼格式: ANSI, UTF-8, UTF-16等

二、JSON型態
JSON資料有以下6種型態
Number(數字)
Boolean(布林值)
String(字串)
Array(陣列)
Object(物件)
Null(空值)

三、各型態介紹
Number(數字):
可以為整數或浮點數(小數)
舉例: 12345, 20.58, 44.294
Boolean(布林值):
即true或false
舉例: true, false
String(字串):
一串文字,用雙引號(")包圍,可以使用跳脫字元(\n, \", \t)
舉例: "abc", "中文", "換\n行"
Array(陣列):
一連串資料,跟大部分程式語言不一樣的是可以接受不同型態的資料,用中括弧([, ])包圍,用逗號(,)區分各資料
舉例: [1, 2, 3], ["xyz", 5.2, true, 7]
Object(物件):
可命名的資料型態(key-value),和Array(陣列)不同的不只可命名,還有因為其儲存方式而無法排序,名稱只能為字串,且可重複,在部分程式語言的JSON解析器可能無法重複使用相同名稱,用大括弧({, })包圍,用冒號(:)分隔名稱(鍵)與資料(值),用逗號(,)區分各資料
舉例: {"abc": "xyz", "number": 123789, "boolean": true}
Null(空值):
就是空值,就是沒東西
舉例: null

備註: 以上資料型態皆可互相搭配交錯使用

四、正確及錯誤例子
合法:
"這是一個JSON字串,使用雙引號(\")包圍"
{
"這是名字": "這是資料", "hi": 123,
"備註": "只要格式正確,有沒有換行沒差" }
null
不合法:
"key": "value"
只有物件裡的資料能命名
應改為:
{"key", "value"}


234, array
陣列應使用中括號([, ])包圍,且字串要用雙引號(")包圍
應改為:
[234, "array"]


五、進階
因為所有型態能交錯使用,所以可以的很複雜,雖然不建議包很多層(文字背景顏色表示成對的括號)
{
"1": {
"2": [
"3",
{
"4": 5.6,
"7": 8
}
],
"9": 10,
"11": 12.13
},
"14": [15, 16.17, "18"],
"19": null,
"20": []
}



創作回應

更多創作