JSON 工具

格式化 / 校验 / 各类互转 · 共 14 个工具

JSON 的日常操作就是四件事:让它可读、让它合法、比较两个版本、转成下游系统要的格式。格式化工具负责前两件——先解析,报错时给出行列位置,再按统一缩进重新输出;压缩是反向操作,为了传输。

转换类工具覆盖的是真实项目里的衔接处:老服务的 XML、给表格用的 CSV、当配置用的 YAML、从浏览器开发者工具复制出来的 Cookie 和查询串,以及需要编译期校验接口返回值时用的类型定义。

我该用哪个?

本分类的全部工具

JSON 格式化 / 压缩 / 校验HOT 美化或压缩 JSON,校验失败时给出出错位置 JSON 转义 / 去转义 把文本变成可嵌入代码字符串的转义形式,或还原 JSON 对比 比较两段 JSON,列出新增、删除与修改的键路径 JSON 键排序 按字母顺序递归排序所有对象的键名 JSON 转字符串 / 字符串转 JSON 处理双重转义的字符串与 JSON 互转 JSON 转 XML 把 JSON 对象转换成结构对应的 XML XML 转 JSON 用浏览器内置解析器把 XML 转成 JSON JSON 数组转 CSV 把对象数组导出为 CSV,可选分隔符 CSV 转 JSON 数组 把 CSV 解析成对象数组,可选首行表头 JSON 与 YAML 互转NEW JSON 转 YAML、YAML 转 JSON,手写解析覆盖常见结构 JSON 生成代码定义NEW 根据示例 JSON 生成 TS / Go / Java / C# / PHP 类型定义 查询参数与 JSON 互转 URL 查询字符串和 JSON 对象互相转换 Cookie 与 JSON 互转 解析 Cookie 字符串为 JSON,也能反向拼回 JSON 与 Properties 互转 JSON 与 Java Properties 风格键值文件互转

本分类的深度指南

常见问题

JSON 为什么不能写注释和尾随逗号?

规范只定义了一种文法,两者都在文法之外。注释被刻意排除,是为了让任何合规的解析器都能读任何 JSON 文档。JSON5 与 JSONC 是为配置文件扩展的文法,严格解析器会拒绝它们的输出。

为什么大整数会变样?

JavaScript 的数字是 IEEE-754 双精度浮点,超过 2^53 - 1 的整数无法全部精确表示。雪花 ID、Discord ID、纳秒时间戳都会悄悄丢掉末尾几位。这类值在 JSON 里要保留为字符串,或用支持大数的库解析。

JSON 转 CSV 为什么出现 [object Object]?

CSV 只有行和列,没有表达嵌套的方式。当某个值本身是对象或数组时,转换器只能用它的默认字符串形式。先压平结构,或把嵌套值序列化成 JSON 字符串放进单独一列。