一文看懂 json(chatgpt4o 輔助編寫)
一、json 資料格式
JSON(JavaScript Object Notation)是一種輕量級的資料交換格式,其本質上是基於鍵值對的結構。JSON 的資料格式有幾種主要的表示方式,包括:
1. 物件(Object)
JSON 物件是由花括號 {}
包裹的一組鍵值對,鍵是字串並且必須是雙引號包含的字串(不要和python字典中鍵是不可變型別混淆)
,值可以是字串、數字、布林值、陣列、物件等。
格式:
{
"name": "Alice",
"age": 30,
"isStudent": false
}
2. 陣列(Array)
JSON 陣列是一個有序的值列表,使用方括號 []
包裹。陣列中的元素可以是任意型別,包括物件、字串、數字等。
格式:
[
"apple",
"banana",
"cherry"
]
3. 字串(String)
字串是由雙引號包裹的 Unicode 字串,通常表示文字資料。
格式:
"Hello, World!"
4. 數字(Number)
數字可以是整數或浮點數,不帶引號。
格式:
42
或
3.14159
5. 布林值(Boolean)
布林值只有兩個可能值:true
或 false
。
格式:
true
6. 空值(Null)
null
是表示空或無值的 JSON 資料型別。
格式:
null
總結
JSON 資料的主要格式有以下幾種:
-
物件(Object): 使用
{}
包裹的鍵值對集合。 -
陣列(Array): 使用
[]
包裹的有序值列表。 - 字串(String): 使用雙引號包裹的文字。
- 數字(Number): 整數或浮點數。
-
布林值(Boolean):
true
或false
。 -
空值(Null):
null
表示空。
這些元素可以相互巢狀,形成更復雜的 JSON 結構。
二、json 陣列必須是同一型別的值?
在傳統程式語言中(例如 Java、C 等)還有golang
,陣列通常要求所有元素都必須是相同的資料型別,這種型別的陣列稱為 “強型別陣列”。例如,一個整型陣列只能包含整數值。
然而,JSON 的陣列並沒有這個限制。JSON 是一種資料交換格式,其設計目標是靈活和輕量化,因此允許陣列中的元素是不同的資料型別。這種特性使得 JSON 陣列可以包含混合型別的資料,稱為 “弱型別陣列”。
JSON 陣列的定義
在 JSON 中,陣列是一個有序的值集合,使用方括號 []
包圍,並且陣列中的每個元素可以是任意合法的 JSON 資料型別(如數字、字串、物件、布林值、null,甚至其他陣列)。
例子:
[
42, // 數字
"Hello", // 字串
true, // 布林值
null, // 空值
{"key": "value"}, // 物件
[1, 2, 3] // 陣列
]
在這個例子中,JSON 陣列包含了多種型別的元素(數字、字串、布林值、空值、物件、陣列),這在 JSON 中是完全合法的。
總結
雖然傳統陣列定義要求同一型別的值,但 JSON 陣列是靈活的,可以包含不同型別的資料。這種設計使得 JSON 更加適合表示複雜的資料結構和進行資料交換。
三、可以使用單引號?
JSON 鍵和值中的字串必須使用雙引號
['apple', 'banana', 'cherry']
四、json 中不一定必須存物件
思維有點定式了,因為見到的 json 物件都是{}
格式,但是實際 json 格式也可以儲存1
,”1“
等值
相關文章
- 一文看懂 GithubGithub
- ? 一文看懂 JS 繼承JS繼承
- 一文看懂 PHP 7.3 更新PHP
- 一文看懂分散式事務分散式
- 一文看懂java io系統Java
- 一文看懂Java鎖機制Java
- 一文看懂Java集合(詳細)Java
- 一文看懂socket程式設計程式設計
- 一文看懂YOLO v3YOLO
- JSON無限摺疊選單編寫JSON
- 一文看懂Redis的持久化原理Redis持久化
- 一文看懂 PostgreSQL 分散式架構SQL分散式架構
- 一文看懂golang單元測試Golang
- 一文看懂 C 語言 I/O
- 一文看懂什麼是架構架構
- 程式設計師編寫技術文章需要的四個輔助神器 ,強烈建議收藏 !程式設計師
- 一文帶你看懂Spring事務!Spring
- 一文看懂架構圖怎麼畫架構
- 一文看懂神經網路工作原理神經網路
- 一文看懂python多執行緒Python執行緒
- 一文看懂Vue3.0的優化Vue優化
- 一文看懂卷積神經網路卷積神經網路
- 一文看懂AI的 Transformer 架構!AIORM架構
- 【轉知乎回答】一文看懂 LLaMA 中的旋轉式位置編碼(Rotary Position Embedding)
- 一文看懂FSSC與RPA的關係
- 一文看懂RPA的3種部署模式模式
- 【插畫】一文看懂容器k8sK8S
- 一文帶你看懂cookie,面試前端不用愁Cookie面試前端
- 解密|一文帶你看懂外掛技術解密
- C++ 練氣期之一文看懂字串C++字串
- 一文看懂川普退出伊朗核協議協議
- 牛透社:一文看懂中國 IT 滄桑鉅變
- 一文看懂RPA與Excel宏的區別Excel
- 【JS基礎】一文看懂前端模組化規範JS前端
- 一文看懂npm、yarn、pnpm之間的區別NPMYarn
- 一文看懂二叉樹的概念和原理二叉樹
- 一文看懂 Python 中的函式引數Python函式
- 一文看懂Mamba,Transformer最強競爭者ORM