跳至主要內容

驗證 JSON 並找出確切的語法錯誤

驗證器會用瀏覽器嚴格的 JSON 剖析器處理你的文字。剖析失敗時,它會指出剖析器停止的位置,讓你直接前往錯誤處。

範例演算

結尾逗號

輸入
{
  "name": "Ada",
  "skills": ["math", "logic"],
}

無效的JSON (行: 4)

剖析器訊息
Expected double-quoted property name in JSON at position 50 (line 4 column 1)
行
4
欄
1

單引號鍵名

輸入
{
  "name": "Ada",
  'role': "admin"
}

無效的JSON (行: 3)

剖析器訊息
Expected double-quoted property name in JSON at position 21 (line 3 column 3)
行
3
欄
3

鍵名未加引號

輸入
{
  "name": "Ada",
  age: 36
}

無效的JSON (行: 3)

剖析器訊息
Expected double-quoted property name in JSON at position 21 (line 3 column 3)
行
3
欄
3

以上訊息是在建置時由 Chrome 和 Edge 使用的 V8 引擎 JSON 剖析器產生。Firefox 和 Safari 的措辭不同,但指出的錯誤相同。

格式化規則

  • 鍵名和字串必須使用雙引號;單引號和未加引號的文字都會被拒絕。
  • 逗號只能用來分隔兩個值,因此緊接在 } 或 ] 之前的逗號是語法錯誤。
  • 行與欄從 1 開始計算,標示剖析器停止的位置,通常緊接在真正的錯誤之後,所以也請檢查前一個字元。