跳到主要内容

JSON5 Formatter & Validator

验证、格式化和转换JSON5——用于tsconfig.json、.eslintrc、jest.config和Babel配置的JSON超集,允许注释、尾随逗号、不带引号的键、单引号字符串和十六进制数字。使用2或4个空格缩进进行美化输出,将其简化为严格JSON,并在无效输入处获得带有行/列的精确错误。

输入

选项

JSON5输出如何引用键和字符串值。

输出

输出
 
验证状态
这对您有帮助吗?

使用指南

什么是JSON5?

JSON5是JSON的超集,旨在使人们更容易手动编写和维护配置。它放松了严格JSON的规则:对象键不需要引号,允许///* */注释,字符串可以使用单引号,尾随逗号没问题,数字可以是十六进制或以小数点开头/结尾,Infinity/NaN是有效值。这是tsconfig.json、大多数.eslintrc文件、Babel和Jest配置以及许多其他手编辑配置文件背后的格式。

该工具做什么?

粘贴JSON5 (或已经是有效JSON5的普通JSON),获得验证和格式化的输出:

  • 格式化JSON5 — 美化输出或压缩输入,同时将其保持为JSON5。
  • 转换为严格JSON — 解析JSON5并重新序列化为标准JSON,删除注释、尾随逗号和任何其他JSON5专有语法,以便在任何需要普通JSON的地方都是安全的。

每次运行首先验证输入。格式错误的输入不会无声地失败——状态框显示解析器的精确错误,包括它中断的行和列。

功能

  • 输出格式 — 重新格式化为JSON5或转换为严格JSON。
  • 缩进 — 2个空格、4个空格、制表符或压缩版 (无缩进)。
  • 按字母顺序排序对象键 — 递归地,以获得规范的对diff友好的顺序。
  • 引号样式 (仅JSON5输出) — 双引号或单引号。
  • 显示您的输入实际使用的JSON5专有功能 (注释、不带引号的键、尾随逗号、十六进制数字等)。
  • 复制或下载结果。

如何使用

  1. 将JSON5粘贴到输入框中——验证和格式化立即发生。
  2. 选择是将其保持为JSON5还是转换为严格JSON
  3. 根据需要调整缩进、键排序和 (对于JSON5输出) 引号样式。
  4. 复制或下载输出。如果输入无效,状态框会准确显示问题所在和位置。

转换为JSON是否会保留我的注释?

否。严格JSON没有注释的概念,因此转换为JSON会删除它们——以及尾随逗号、不带引号的键和任何其他JSON5专有语法——与任何JSON5到JSON的转换必须做的一样。

隐私

解析和格式化完全在您的浏览器中运行。您的数据永远不会离开您的设备——对于您不想粘贴到随机网站服务器上的配置文件是安全的。

对于具有#///注释和多行字符串的同样轻松、人类友好的JSON超集,请参阅HJSON Formatter & Validator。对于严格的仅规范JSON,使用JSON Formatter

json5tsconfigeslintrcbabel configjest configconfig filecommentstrailing commaunquoted keysstrict json

Use it from code

From 3 credits per call

REST API

curl -X POST https://api.iotools.cloud/v1/tool/json5-formatter-validator \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "input": "{\n  // JSON5 allows comments like this\n  name: '",
    "outputFormat": "json5",
    "indent": "2",
    "sortKeys": "",
    "quoteStyle": "double"
  }'

Swap in your own key from your account. The tool's fields are the body — no wrapper.

Ask an AI agent

Use the IOTools `json5-formatter-validator` tool (JSON5 Formatter & Validator) on this input:

YOUR_INPUT_HERE

Paste this at any agent connected to the IOTools MCP server, then add your input.

喜欢这些工具?去掉广告吧。

一次性付款即可永久移除您账户中的所有广告。无需订阅,不追踪。