Cara menggunakan
- Tempel YAML ke input, atau coba contohnya.
- Pilih indentasi 2 atau 4 spasi.
- Salin JSON atau unduh sebagai file .json.
Cara kerja
YAML diparsing dengan pustaka yaml open-source menggunakan skema inti YAML 1.2, yang memang diharapkan peralatan modern: yes, no, on, dan off tetap sebagai string, dan hanya true dan false yang menjadi boolean. Anchor (&name) dan alias (*name) diperluas, serta merge key << diterapkan; jumlah perluasan alias dibatasi, sehingga dokumen yang sengaja dibuat membengkak ditolak alih-alih membuat halaman macet.
File dengan beberapa dokumen yang dipisahkan oleh --- menjadi array JSON dengan satu elemen per dokumen. Komentar, anchor, dan tag tidak memiliki padanan JSON dan dibuang; urutan key tetap dipertahankan. Timestamp tetap sebagai string. Integer dengan lebih dari sekitar 15 digit kehilangan presisi, seperti halnya JSON yang ditangani di JavaScript.
Jika YAML tidak valid, error pertama ditampilkan beserta baris dan kolomnya, misalnya tab yang dipakai untuk indentasi atau tanda kurung penutup yang hilang. Untuk arah sebaliknya, gunakan JSON ke YAML, atau konverter dua arah JSON ⇄ YAML.
Contoh
File CI dengan anchor
Daftar job yang menggunakan kembali blok defaults dengan <<: *defaults menjadi JSON dengan defaults disalin ke setiap job, sehingga Anda dapat melihat persis apa yang diperoleh setiap job.
File Kubernetes multi-dokumen
File dengan Deployment dan Service yang dipisahkan oleh --- menjadi array JSON berisi dua objek, siap untuk kubectl atau jq.
Pertanyaan yang sering diajukan
Mengapa yes tetap menjadi string?
YAML 1.2, yang digunakan di sini dan oleh sebagian besar alat saat ini, hanya memperlakukan true dan false sebagai boolean. Parser YAML 1.1 yang lebih lama mengubah yes, no, on, dan off menjadi boolean, yang menyebabkan banyak bug.
Apa yang terjadi pada komentar?
JSON tidak memiliki komentar, jadi komentar dibuang. Data itu sendiri tidak berubah.
Apakah ada batas ukuran?
Hanya memori browser Anda. File besar dikonversi setelah jeda singkat saat Anda mengetik, sehingga halaman tetap responsif.
Privasi
Konversi berjalan sepenuhnya di browser Anda. YAML dan JSON Anda tidak diunggah atau disimpan.