Skip to main content

JSON 到 YAML 转换器 使用 js-yaml 库将 JSON 转换为干净、可读的 YAML 格式。

JSON 到 YAML illustration
🔄

JSON 到 YAML

使用 js-yaml 库将 JSON 转换为干净、可读的 YAML 格式。

1

粘贴JSON

将您的JSON数据粘贴到输入字段中。

2

查看YAML

干净的YAML输出会立即出现,具有适当的格式化。

3

复制结果

复制YAML以用于配置文件和应用程序中。

Loading tool...

What Is JSON 到 YAML?

JSON 到 YAML 将 JavaScript 对象表示法转换为 YAML Ain't Markup Language 格式。YAML 比 JSON 更适合用于配置文件,因为其语法更清晰:不需要大括号、逗号,并且支持注释。本转换器使用 js-yaml 库从任何有效的 JSON 输入生成干净、符合标准的 YAML 输出。它处理所有 JSON 类型,包括嵌套对象、数组、字符串、数字、布尔值和空值。输出保留键顺序并使用 YAML 的简洁块样式以实现最大可读性。

Why Use JSON 到 YAML?

  • 使用可靠的js-yaml库生成干净的YAML输出。
  • 支持所有JSON类型:对象、数组、字符串、数字、布尔值、空值。
  • 不换行--长值保持在一行上以提高清晰度。
  • 实时转换,输入即可看到结果。

Common Use Cases

DevOps配置

将JSON配置文件转换为YAML格式,以适用于Kubernetes、Docker Compose和CI/CD流水线。

API规范

JSON API规范转换为YAML格式,用于OpenAPI/Swagger文档。

应用程序配置

将应用程序的JSON设置转换为YAML格式,以适用于偏爱YAML格式的框架。

基础设施即代码

将JSON数据转换为YAML格式,用于Ansible playbook和CloudFormation模板。

Technical Guide

转换器使用 JavaScript 的原生 JSON.parse() 方法解析 JSON 输入,以进行严格的验证,然后将结果对象传递给 js-yaml 的 dump() 函数,带有优化设置。

关键选项:lineWidth 设置为 -1 以禁用行包装,防止长字符串跨多行分割。noRefs 已启用以防止 YAML 锚点/别名引用,从而产生直接的输出。sortKeys 已禁用以保留 JSON 输入中的原始键顺序。

js-yaml 库处理所有类型转换:JSON 字符串成为 YAML 字符串(仅在必要时加引号),数字成为 YAML 整数或浮点数,布尔值成为 YAML true/false,null 成为 YAML null,数组成为 YAML 序列,对象成为 YAML 映射。

输出使用 YAML 的块集合样式以提高可读性:对象用键值对表示,每个键值对占一行;数组使用破折号 (-) 表示。

Tips & Best Practices

  • 1
    首先验证您的JSON -- 无效的JSON会产生错误消息。
  • 2
    YAML支持注释(#)--您可以在转换后将其添加到输出中。
  • 3
    长字符串值保持在一行上。如果需要,请编辑输出以使用YAML块标量(|)。
  • 4
    原始JSON中的键顺序在YAML输出中得到保留。

Related Tools

Frequently Asked Questions

Q 输出是否为有效的YAML?
是,输出由js-yaml生成,确保完全符合YAML 1.2规范。
Q 注释是否被保留?
JSON不支持注释,因此没有可保留的内容。您可以在转换后添加YAML注释。
Q 特殊字符如何处理?
js-yaml自动为需要转义的字符串加引号,例如包含冒号或特殊YAML字符的字符串。
Q 我可以将YAML转换回JSON吗?
是,您可以使用我们的YAML到JSON转换器进行反向转换。
Q 它能处理深度嵌套的JSON吗?
是,转换器能够处理任意深度的JSON,并生成正确缩进的YAML输出。

About This Tool

JSON 到 YAML is a free online tool by FreeToolkit.ai. All processing happens directly in your browser — your data never leaves your device. No registration or installation required.