YAML to JSON Converter
Fast and secure YAML to JSON conversion. Perfect for configuration files and data analysis.
Fast and secure YAML to JSON conversion. Perfect for configuration files and data analysis.
YAML dan JSON adalah format yang terkait erat — JSON secara teknis merupakan bagian ketat dari YAML 1.2 — dan konversi di antara keduanya biasanya mudah dilakukan. YAML menambahkan fitur ramah manusia yang tidak dimiliki JSON: komentar, string multi-baris tanpa pelolosan, referensi jangkar dan alias, kutipan yang lebih fleksibel, dan struktur berbasis lekukan yang menyerupai tata letak dokumen alami. Hal ini menjadikan YAML pilihan populer untuk file konfigurasi (manifes Kubernetes, alur kerja GitHub Actions, Docker Compose) sementara JSON mendominasi payload API.
Mengonversi YAML ke JSON biasanya berarti melepaskan ekstra YAML yang ramah manusia sebagai imbalan atas format yang lebih mudah diurai oleh mesin dan itulah lingua franca HTTP API. Komentar dihilangkan (JSON tidak memilikinya). Referensi jangkar diselesaikan menjadi nilai rujukannya. String multi-baris diciutkan ke string JSON standar dengan baris baru yang disematkan.
Konverter ini mem-parsing YAML menggunakan js-yaml, perpustakaan YAML yang paling banyak digunakan dalam JavaScript. Output dihasilkan menggunakan JSON.stringify dengan lekukan opsional. Konversi menangani semua sintaksis YAML 1.2 standar termasuk gaya aliran, gaya blok, skalar, urutan, pemetaan, jangkar, alias, dan jenis tag standar.
Sebagian besar API dan banyak lingkungan pemrograman mengharapkan JSON. File konfigurasi yang ditulis dalam YAML perlu dikonversi ke JSON saat berintegrasi dengan kode atau layanan yang hanya menerima JSON. Peralatan untuk JSON juga lebih banyak: jq, JSON Path, JSON Schema, dan ekosistem validator dan transformator yang luas semuanya mengasumsikan masukan JSON.
JSON juga tidak ambigu dalam hal yang tidak dimiliki YAML. Fleksibilitas YAML menciptakan kejutan penguraian — string seperti 'tidak' diurai sebagai boolean false di YAML 1.1, string versi diurai sebagai float, kesalahan indentasi menghasilkan perubahan struktural diam-diam. Mengonversi ke JSON akan membekukan data menjadi bentuk yang tidak terlalu ambigu.
Tempel YAML, dapatkan JSON.
js-yaml mengimplementasikan YAML 1.2 dengan dukungan opsional untuk kebiasaan YAML 1.1 (masalah 'tidak'-sebagai-salah, bilangan oktal tanpa awalan 0o). Parser menghasilkan pohon objek JavaScript menggunakan tipe asli: angka, string, boolean, null, array, dan objek biasa.
JSON.stringify membuat serial pohon objek menjadi JSON. Lekukan opsional menghasilkan hasil cetakan yang cantik; tanpanya hasilnya adalah JSON satu baris yang ringkas. Nilai khusus (NaN, Infinity, tidak terdefinisi) bukan JSON yang valid; konverter memaksanya ke nol jika ada.
Kasus Edge: Stempel waktu YAML menjadi string ISO-8601 di JSON. Data biner YAML (dikodekan base64) menjadi string. Jangkar dan alias diselesaikan menjadi nilai duplikat di JSON, karena JSON tidak memiliki sintaks referensi.