← 所有文章

JSON 是什麼?資料交換格式完整入門指南

2026 年 3 月 · 閱讀時間約 6 分鐘

在現代 Web 開發中,不論是前端還是後端,JSON(JavaScript Object Notation)幾乎無處不在。從 REST API 的回應格式到設定檔,JSON 已經成為最普及的資料交換格式之一。本文將帶你從零開始認識 JSON,了解它的語法規則、資料型別以及實際應用場景。

JSON 的起源與歷史

JSON 最早由 Douglas Crockford 在 2001 年提出,其設計靈感來自 JavaScript 的物件字面量語法。然而,JSON 本身是一種與語言無關的資料格式,幾乎所有主流程式語言都有內建的 JSON 解析與生成支援。

2006 年,JSON 被正式標準化為 RFC 4627。2017 年,IETF 發布了更新版的 RFC 8259,成為目前最新的 JSON 標準規範。同時,ECMA International 也將 JSON 定義為 ECMA-404 標準。

JSON 的基本語法

JSON 的語法非常簡潔,主要由兩種結構組成:

JSON 支援以下六種資料型別:

資料型別範例說明
字串 (String)"Hello"必須使用雙引號
數字 (Number)42, 3.14整數或浮點數
布林值 (Boolean)true, false必須小寫
空值 (Null)null表示空值
物件 (Object){"key": "value"}巢狀結構
陣列 (Array)[1, 2, 3]有序列表

注意:JSON 的鍵名(key)必須使用雙引號包圍,這是 JSON 與 JavaScript 物件字面量的主要差異之一。單引號或不加引號都是無效的 JSON。

JSON 與 JavaScript 的關係

雖然 JSON 的語法源自 JavaScript,但兩者並不完全相同。JavaScript 物件允許使用單引號、不加引號的鍵名、尾隨逗號等,這些在 JSON 中都是不合法的。

JavaScript 提供了兩個內建方法來處理 JSON:

這兩個方法是前端開發中最常用的 JSON 操作,也是 API 通訊的基礎。

JSON 的常見應用場景

1. REST API 資料傳輸

絕大多數的 REST API 都使用 JSON 作為請求和回應的資料格式。相比 XML,JSON 更輕量、更易讀,且解析速度更快。根據 ProgrammableWeb 的統計,超過 70% 的公開 API 使用 JSON 格式。

2. 設定檔

許多開發工具和框架使用 JSON 作為設定檔格式,例如 package.json(Node.js)、tsconfig.json(TypeScript)、.eslintrc.json(ESLint)等。

3. NoSQL 資料庫

MongoDB、CouchDB 等 NoSQL 資料庫使用類似 JSON 的格式(BSON、JSON Document)來儲存資料,使得資料結構更加靈活。

4. 資料儲存與快取

瀏覽器的 localStoragesessionStorage 通常搭配 JSON 來儲存結構化資料。Redis 等快取系統也廣泛使用 JSON 格式。

JSON 的優點與限制

優點限制
語法簡潔,易於閱讀不支援註解
跨語言、跨平台支援不支援日期型別
解析速度快大型資料集效能較差
原生 JavaScript 支援不支援二進位資料
人類可讀沒有命名空間

實用建議:JSON 不支援註解是許多開發者的痛點。如果你需要帶註解的設定檔,可以考慮使用 JSON5 或 JSONC 格式,它們是 JSON 的超集,支援單行和多行註解。

如何確保 JSON 格式正確?

在開發過程中,JSON 格式錯誤是常見的問題來源。一個多餘的逗號、缺少的引號或不正確的巢狀結構都可能導致解析失敗。使用我們的線上 JSON 格式化工具,可以快速驗證和美化你的 JSON 資料:

  1. 貼上你的 JSON 資料
  2. 工具會自動檢查語法錯誤
  3. 一鍵格式化為易讀的結構
  4. 支援壓縮、複製等常用操作
立即使用 JSON 格式化工具 →

結語

JSON 從一個簡單的資料表示法,發展成為現代軟體開發中不可或缺的基礎技術。無論你是前端工程師、後端開發者還是資料分析師,深入理解 JSON 都能幫助你更有效率地處理資料交換與整合任務。

參考文獻

  1. Bray, T. "The JavaScript Object Notation (JSON) Data Interchange Format." IETF RFC 8259, 2017. https://datatracker.ietf.org/doc/html/rfc8259
  2. ECMA International. "The JSON Data Interchange Syntax." ECMA-404, 2nd Edition, 2017. https://ecma-international.org/publications-and-standards/standards/ecma-404/
  3. Crockford, D. "Introducing JSON." json.org. https://www.json.org/json-en.html
  4. Mozilla Developer Network. "JSON." MDN Web Docs. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON