专注的 YAML 工作区

YAML 转 JSON 转换器

将易读的 YAML 转换为严格 JSON,提供清晰的语法反馈,并且无需上传内容。

打开转换器
YAML 源码8 行 · 110 B
仅在当前浏览器中解析
JSON 结果
等待 YAML 输入
等待 YAML 输入
01 / 转换流程

从可读配置到严格数据

01

添加 YAML

粘贴 YAML、载入内置示例,或选择本地 .yaml、.yml 文件。

02

本地转换

浏览器按照 YAML 1.2 解析数据,并将结果序列化为标准 JSON。

03

使用结果

复制格式化 JSON,或下载 UTF-8 文件用于 API、应用、测试和迁移。

NOTE—01

面向 YAML 的错误提示

解析失败时保留行号和上下文,不会只返回空结果。

NOTE—02

支持多文档

使用 --- 分隔的 YAML 流会转换为 JSON 数组,不会静默丢弃文档。

NOTE—03

默认在浏览器本地运行

文本和本地文件只在当前标签页中处理,不需要账户或服务器队列。

03 / 类型映射

YAML 值转换成 JSON 后是什么样

常见结构通常可以直接映射,但 YAML 的数据模型比 JSON 更丰富。在把配置交给 API 或应用前,可以先通过这张表确认转换结果。

YAMLJSON转换说明
name: Ada"name": "Ada"

YAML 的普通字符串和带引号字符串都会成为使用双引号的 JSON 字符串。

enabled: true"enabled": true

YAML 1.2 布尔值会保留为布尔值;yes 和 no 会按字符串处理。

count: 42"count": 42

常见整数和小数会成为 JSON 数字,并受 JavaScript 数字精度限制。

items: [a, b]"items": ["a", "b"]

块序列和流式序列都会成为 JSON 数组,元素顺序保持不变。

value: null"value": null

YAML 的 null 和空值通常都会转换为 JSON null。

--- / ---[{…}, {…}]

多个 YAML 文档会合并到一个 JSON 数组中,避免遗漏任何文档。

04 / 转换边界

JSON 无法继续承载的信息

转换会保留 JSON 能表示的数据。注释、排版以及 YAML 独有特性因为没有标准 JSON 对应语法,只能被解析或舍弃。

01

注释不是数据

YAML 注释方便阅读,但不属于解析后的值。JSON 无法保留注释内容及其原始位置。

02

锚点会被展开

别名和合并键用于减少 YAML 重复内容;JSON 结果只保留展开后的值,不保留锚点名称和语法。

03

映射键必须变成字符串

JSON 对象的键只能是字符串。使用复杂键或非字符串键的 YAML 映射需要额外检查。

04

日期形文本建议加引号

不同 YAML 工具可能用不同方式解释类似日期的标量。如果必须保留原始文本,请明确加引号。

01我的 YAML 会被上传吗?

不会。解析、JSON 生成、复制和下载准备都在浏览器中完成。

02是否支持多个 YAML 文档?

支持。用 --- 分隔的文档会作为一个 JSON 数组返回。

03支持哪个 YAML 版本?

解析器采用 YAML 1.2 行为,避免 YAML 1.1 中一些意外的布尔值转换。

04所有 YAML 特性都能转为 JSON 吗?

不能。JSON 数据模型更小,注释、锚点、标签和原始格式不会保留。

05YAML 锚点和别名会怎样处理?

解析器会展开别名,JSON 接收解析后的实际值;锚点名称、别名和合并语法不会保留。

06为什么某个 YAML 值的类型发生了变化?

未加引号的 YAML 标量可能是字符串、数字、布尔值或 null。带前导零的标识符和类似日期的文本应使用引号。