JSON 格式化/驗證

免登入・本機計算・資料不上傳

貼上一段 JSON,這個工具會自動整理成好讀的縮排格式,內容有問題也會直接告訴你錯在第幾行第幾個字元、白話說明是哪裡不對。不用等你按按鈕,邊貼邊看結果。

例:跟廠商要 API 串接規格、匯出的設定檔擠成一行看不懂,貼進來就能整理好,也能一鍵壓縮回一行。

全程在你的瀏覽器本機處理,內容不會上傳到任何伺服器。

貼上 JSON0 字元
結果
怎麼算的?

貼上內容後,工具用瀏覽器原生的 JSON.parse() 嘗試解析:成功的話依你選的模式(格式化/壓縮)與縮排格數重新輸出; 失敗的話,改用自己寫的一個小型掃描器逐字元檢查,定位出第一個出錯的位置並轉成行號、欄號, 同時依照錯誤的種類(缺冒號、缺逗號、多了 trailing comma、key 沒加雙引號、字串沒收尾等)給白話說明, 不是直接把瀏覽器原生的英文錯誤訊息丟給你。

這樣做的原因是:不同瀏覽器(Chrome/Safari/Firefox)內建的 JSON 錯誤訊息格式其實互不相同, 直接顯示會讓同一個問題在不同裝置上看到不同、甚至看不懂的說法,自己定位錯誤位置才能保證每個人看到的說明一致又白話。

資料來源與依據

  • 格式化/壓縮成功路徑使用瀏覽器原生 JSON.parse() 與 JSON.stringify(),不做任何自訂改寫。
  • 語法錯誤定位邏輯為本站自行實作,逐字元掃描找出第一個不符合 JSON 規格的位置,統一在各瀏覽器顯示一致的白話說明。
  • 全程在你的瀏覽器本機執行,貼上的內容不會傳送到伺服器或任何第三方。
  • 工具邏輯最後更新於 2026-07。

最後核對日期:2026-07-27

常見問題

JSON 是什麼?我為什麼會遇到它?

JSON 是一種很常見的「資料格式」,長得像用大括號 {} 和中括號 [] 包起來的文字,例如 {"姓名":"安迪","年齡":30}。很多網站、App、後台系統匯出資料,或是工程師朋友傳規格檔給你,都會用這種格式。它的優點是電腦看得懂、也還算人看得懂,缺點是如果整包擠成一行,人眼就很難分辨哪個括號對應哪個,這時候就需要「格式化」把它整理成一行一項、有縮排的樣子。

這個工具說「錯誤在第幾行第幾個字元」,那個字元是怎麼數的?

從整段內容的最前面開始算,換行會讓行號 +1、該行的字元位置重新從 1 算起,跟大部分程式編輯器(VS Code、記事本等)左下角顯示的行列號算法一致,所以你可以直接照這個位置回去原始內容或編輯器裡找。

我把 JavaScript 物件貼進來,為什麼說格式不對?

JSON 跟 JavaScript 物件寫法很像但規則更嚴格:JSON 的 key(物件的欄位名稱)一定要用雙引號 "" 包起來,不能省略;字串也只能用雙引號,不能用單引號;最後一項後面不能多一個逗號(trailing comma)。JavaScript 物件這些都可以,但 JSON 不行,這是最常見的「格式不對」原因,工具會直接白話告訴你是哪一種狀況。

壓縮成一行是要做什麼用的?

傳給程式或系統使用時,通常不在乎好不好看,壓縮成一行可以省掉空白與換行占的空間(例如貼到某些設定欄位有長度限制、或要塞進一行的環境變數時),格式化(展開縮排)則是給人看、方便檢查內容用,兩個互為反向操作,可以隨時切換。