YAML ↔ JSON コンバーター
YAML と JSON を双方向に変換。Kubernetes マニフェスト、CI 設定、OpenAPI 仕様などに便利。
上に入力すると結果が表示されます。
用途
YAML と JSON は同じものを表現できます(ネストしたマップ、リスト、プリミティブ)が、可読性と厳密さのトレードオフが異なります。YAML は人間に優しく(Kubernetes マニフェスト、GitHub Actions、OpenAPI、多くの CI 設定)、JSON は API や機械可読フォーマットの定番です。本コンバーターは双方が表現可能な構造について、損失なく変換します。YAML には js-yaml(YAML 1.2)、JSON にはネイティブ API を使用し、両方向ともブラウザ内で動作します。
使うべきタイミング
- OpenAPI / k8s / docker-compose の YAML を、JSON が必要なツールに渡したいとき。
- API レスポンス(JSON)を設定ファイル用に YAML に変換したいとき。
- あいまいなインデントで親子関係が分かりにくい YAML の実構造を確認したいとき。
よくある注意点
- 「ノルウェー問題」。 YAML 1.1 は
NO、YES、ON、OFFをブール値に強制変換しました。YAML 1.2 は変換しませんが、下流の古いパーサが変換することがあります。曖昧な文字列は引用しておくのが安全です。 - 複数ドキュメント YAML(
---区切り) — 最初のドキュメントだけが変換されます。 - 独自タグ(
!!python/object、!Refなど)は厳格な YAML 1.2 を破ります。CloudFormation の YAML や PyYAML の pickle ダンプは失敗するので、先にタグを整理してください。 - アンカーとエイリアスは展開されます。 JSON には参照がないため、YAML→JSON 時に
*refはインライン化されます。再変換した YAML は値としては等価ですが、テキストが冗長になります。 - 数値と文字列。 引用なしの YAML
3.14は float、"3.14"は string です。