JSON 转 YAML
把 JSON 数据转换成引号安全的干净 YAML
JSON 输入
YAML 输出
在 YAML 里,缩进就是语义
⚡
引号永远安全
会被 YAML 读成数字、布尔、日期或 "yes/no" 的字符串自动加引号,文件每次都能重新载入为相同数据。
🔒
块式风格,而非 JSON 翻版
嵌套对象和数组变成干净的基于缩进的 YAML 块——比配置文件里布满花括号的 JSON 可读得多。
🎯
往返还原有保证
每一处输出决策都经过可逆测试:YAML 解析回去是与源数据完全一致的 JavaScript 对象,转换不丢任何东西。
什么是 JSON 转 YAML 转换器?
YAML 是配置文件的标准格式——Docker Compose 文件、GitHub Actions 工作流、Kubernetes 清单和 Ansible 剧本都使用它。JSON 转 YAML 转换器把结构化 JSON 重排成 YAML 语法,方便你直接放进配置文件、文档示例或 CI 管道。转换很谨慎:会被 YAML 解析器误读的字符串(数字、日期、布尔值、"yes"/"no"、冒号、井号)都会加引号,嵌套结构变成基于缩进的块而不是花括号。
它能做什么
- 把任意 JSON 文档转换成块式 YAML
- 为会被误解析成数字、布尔或日期的字符串自动加引号
- 正确处理嵌套对象、数组、空对象和空数组
- 选两格或四格缩进
- 输出可重新载入为相同源数据的内容
- 复制或下载 YAML 结果
什么时候用它
- 手写 Docker Compose 或 GitHub Actions 配置容易出错——从 JSON 起步
- 根据 JSON API 响应准备 YAML 示例
- 从 JSON 模型构建 Kubernetes 或 Ansible 清单
- 把旧 JSON 配置转换成团队标准的 YAML
隐私:转换完全在你的浏览器里进行,粘贴的内容绝不会被上传。
映射规则与刻意不做的事
- 两空格缩进;仅在 YAML 会误读时才给键加引号(经典陷阱:文本值
no被 YAML 1.1 解析器读成布尔 false)。 - 多行字符串优先用块标量(
|),而不是一堆转义符——前提是换行能安全往返。 - 锚点、别名与自定义标签刻意不输出——纯 JSON 没有对应物,凭空发明会破坏再次解析。
常见问题
为什么有些字符串被加引号?⌄
纯 YAML 会按形状解析裸值:"true" 是布尔、"3.14" 是数字、"2026-01-01" 是日期。转换器只为这类字符串加引号,让 YAML 载入时保持原始字符串、绝不静默改变类型。
所有 JSON 形态都能转换吗?⌄
可以。对象、数组、字符串、数字、布尔值、null、空对象和空数组都能转换。输出采用块式(缩进式)YAML,可选 2 格或 4 格缩进。
我的 JSON 会被上传吗?⌄
不会。一切都在你的浏览器里用纯 JavaScript 运行——没有任何内容被传输或存储。