YAML 转 JSON

转换器

把 YAML 解析并格式化为 JSON,自动保留嵌套对象、数组与多行字符串。完整支持锚点、别名与合并键,解析时会展开为等价的 JSON 结构。多文档 YAML 按顺序输出为数组,缩进错误会定位到具体行。也支持 JSON 文件粘贴后转换。输出缩进可调,便于直接嵌入代码。缩进错误会定位到具体行。

已转换
YAML
6 行
JSON
8 行

关于 YAML 转 JSON

YAML 是 DevOps 和云原生领域最常见的配置格式(Kubernetes、GitHub Actions、Ansible 都依赖它),但程序、API 和大多数编程语言更习惯处理 JSON。本工具把 YAML 在浏览器本地解析并转为标准 JSON,完整支持锚点(&)与引用(*)展开、多文档(---)拆分为 JSON 数组、块标量(|、>)保留多行结构,并能按类型自动识别 true/false/null/数字/日期。类型识别要特别当心:YAML 1.1 会把 on、no、yes 这类字符串当布尔解析,把看似日期的值当时间戳,如果你希望它们保持原样,请提前在 YAML 里给这些值加引号。若 YAML 存在缩进或语法错误,解析会精确提示行号,相当于一个轻量级 YAML lint 工具。无论是把 K8s 清单转成 JSON 用 jq 提取字段、将配置入库避免后端引入 YAML 库,还是把锚点复用展开看清实际生效值,都能一键完成。例如把 name: Tom 加 age: 20 的 YAML 转成 {"name":"Tom","age":20},缩进层级被还原为嵌套对象。

使用方法

  1. 打开「YAML 转 JSON」
  2. 选择源格式与目标格式
  3. 根据需要调整输出选项
  4. 点击「转换」按钮,结果实时显示
  5. 复制或导出结果

使用场景

  • 配置入库 — 把 YAML 配置转成 JSON 后写入数据库或通过 API 提交,避免后端额外引入 YAML 解析库。
  • 调试 K8s 清单 — 将 kubectl 导出的 YAML 转 JSON,用 jq 或 JSONPath 提取特定字段。
  • 前端读取配置 — 浏览器原生支持 JSON.parse,把 YAML 转成 JSON 后前端可直接消费。
  • 锚点展开 — 把使用了 YAML 锚点复用的配置展开成完整 JSON,看清实际生效的值。
  • 格式校验 — 转换失败即说明 YAML 语法有误,本工具可当作快速 lint 工具。
  • 测试夹具 — 用 YAML 简洁地编写测试数据,再转 JSON 供单元测试 fixture 使用。

常见问题

支持多文档 YAML 吗?

支持。用 --- 分隔的多文档 YAML 会被转换为 JSON 数组,每个文档对应数组中的一个元素。

YAML 锚点和引用会怎样?

会被完全展开。&anchor 定义和 *ref 引用在转成 JSON 时会还原为实际的重复内容,因为 JSON 不支持引用机制。

日期、布尔值会被自动识别吗?

会。YAML 的 true/false、null、数字、日期会按类型转换;如果想保留为字符串,请在 YAML 中加引号。

为什么提示缩进错误?

YAML 对缩进极其敏感,同级元素必须对齐且不能用 Tab。错误提示会给出具体行号,按提示检查即可。

多行块标量怎么转换?

| 和 > 保留的段落在转 JSON 时会变成一个包含真实换行的字符串,">"折叠模式的换行会被规范为空格。

能再转回 YAML 吗?

可以,请使用本站的「JSON 转 YAML」工具完成反向转换。

广告