跳至內容

JSON 美化工具

在瀏覽器內美化、壓縮、排序鍵值並檢查大小。

輸入

這個工具的用途

JSON Formatter 將壓縮或雜亂的 JSON 美化為易讀格式,或壓縮成便於傳輸的形式。它也能依字母順序排序物件鍵,並回報精確的位元組數與行數。所有運算都在你的瀏覽器內完成——資料不會上傳。

使用步驟

貼上 JSON(或載入範例),選擇縮排(2 / 3 / 4 個空白或 Tab),即可在右側讀到結果。

輸入: {"id":42,"name":"devsmiths","tags":["json","tools"],"meta":{"stars":1280,"public":true},"contributors":[{"login":"ada","commits":51},{"login":"linus","commits":33}]}

輸出(2 個空白縮排):

{
  "id": 42,
  "name": "devsmiths",
  "tags": [
    "json",
    "tools"
  ],
  "meta": {
    "stars": 1280,
    "public": true
  }
}

限制與邊界情況

  • 僅支援標準 JSON——若輸入包含單引號、尾隨逗號、註解或 JSONP,請先使用 JSON Repair 工具。
  • 絕對值超過 ±2^53 的數字在重新序列化時會失去精度(JavaScript 數值上限),Validator 會對此提出警告。
  • 非常大的檔案(> ~1.5 MB)會在背景 Worker 中處理,頁面會短暫顯示「處理中」狀態。 參考 處理大型 JSON 檔案取得超越瀏覽器的策略。
  • 延伸閱讀:縮小 vs 美化 JSON——兩種輸出模式的取捨。

常見問題

我的 JSON 會被傳送到伺服器嗎?
不會。所有格式化都在你的瀏覽器內完成,頁面不會上傳任何資料。
「壓縮」和「最小化」差在哪裡?
在這裡是一樣的——「最小化」會移除所有不必要的空白。
排序鍵為何會改變我的資料?
排序只會調整物件鍵的順序(JSON 物件本來就是無序的),值本身完全不會被更動。可選擇「保留順序」關閉排序。
可以格式化 JSON Lines / NDJSON 嗎?
目前還不行——請一次貼上一個 JSON 值。NDJSON 支援已在 roadmap 上。
它會做驗證嗎?
它會以行號回報解析錯誤,但若需要重複鍵與大數警告,請改用 /json/validator 的 Validator。