Apa itu konversi JSON ke CSV?
JSON (JavaScript Object Notation, RFC 8259) adalah format teks berbentuk pohon untuk data terstruktur; CSV (Comma-Separated Values, RFC 4180) adalah format teks tabular yang datar. Mengonversi JSON ke CSV meratakan pohon itu menjadi baris dan kolom, sehingga dataset yang semula berupa respons API bisa langsung dibuka di spreadsheet tanpa mengetik ulang satu baris pun.
Bagaimana cara kerja konversi JSON ke CSV?
Setiap konversi dijalankan lokal di peramban Anda. Langkah-langkah tingkat tinggi adalah:
JSON.parsememvalidasi masukan dan mengonfirmasi bahwa itu adalah larik rekaman di tingkat atas. Pesan error yang jelas muncul jika kurung, koma, atau kunci berkutip tidak sesuai.- Penulis menurunkan kolom header dari rekaman Anda — berupa gabungan semua kunci yang ditemukan, atau hanya kunci dari rekaman pertama, tergantung tombol toggle.
- Objek bersarang diratakan ke dot-key (
user.id,user.city) atau diserialisasi sebagai satu sel JSON, sesuai pilihan Anda. Larik di dalam objek di-stringify JSON dalam kedua mode. - Setiap sel di-escape sesuai RFC 4180: nilai yang mengandung pemisah, tanda kutip ganda, atau baris baru dibungkus dengan kutip, dan kutip internal digandakan. Baris disambung dengan akhiran baris
\r\n. - CSV muncul di kotak keluaran hanya-baca, dan tautan unduh membangun
Blobdengan tipe MIMEtext/csv;charset=utf-8sehingga Anda dapat menyimpan berkas dengan satu klik.
Mengapa mengonversi JSON ke CSV dengan alat ini?
- Privasi: setiap proses penguraian, perataan, dan penulisan terjadi di peramban Anda. Data tidak pernah mencapai server kami.
- Ketepatan: penulis mengikuti RFC 4180. Nilai seperti
Bob, Jr.menghasilkan"Bob, Jr."— satu sel berkutip, bukan dua kolom — dan baris baru atau kutip yang tersemat tetap utuh setelah konversi. - Siap untuk spreadsheet: keluaran langsung bisa ditempel ke Excel atau Google Sheets, dengan kolom header yang sudah diturunkan dari kunci Anda, sehingga tidak ada pembersihan manual sebelum data bisa digunakan.
- Fleksibilitas: ratakan objek bersarang ke dot-key atau stringifikasi sebagai satu sel, pilih pemisah apa pun untuk dialek CSV non-koma, dan tentukan apakah header berasal dari semua kunci atau hanya rekaman pertama.
Apa saja aplikasi umum konversi JSON ke CSV?
Meratakan JSON ke CSV muncul di berbagai pekerjaan data dan tooling:
- Ekspor data: mengubah respons API menjadi berkas CSV yang dapat dibuka tim keuangan, operasi, atau produk di Excel atau Google Sheets tanpa menulis kode.
- Pelaporan: memasukkan hasil kueri JSON ke spreadsheet untuk pivot table, grafik, atau kolom formula cepat. Jenis pekerjaan ini sangat sulit dilakukan langsung pada JSON mentah.
- Tinjauan spreadsheet: meratakan konfigurasi JSON bersarang (pengaturan, feature flag, varian A/B) menjadi CSV agar peninjau non-teknis dapat membaca dan mengeditnya sel per sel.
Seperti apa contoh konversi JSON ke CSV?
Tempel [{"name":"Alice","age":30},{"name":"Bob, Jr.","age":25}], biarkan pemisah pada koma, dan tekan CONVERT. Anda mendapatkan tiga baris: baris header name,age, baris data Alice,30, dan baris "Bob, Jr.",25. Koma tersemat itulah yang sering mengacaukan operasi join naif — di sini ia memicu pengutipan RFC 4180 sehingga sel tetap utuh.
Apakah konverter JSON ke CSV ini berjalan sepenuhnya di peramban saya?
Ya. Setiap proses penguraian, perataan, dan penulisan berjalan secara lokal sebagai JavaScript di dalam tab peramban Anda. Alat ini sama sekali tidak memanggil fetch, XMLHttpRequest, atau navigator.sendBeacon — payload JSON Anda tidak pernah mencapai server kami, konverter pihak ketiga, atau pipeline analitik mana pun. Alat juga bekerja secara luring setelah halaman dimuat, karena ini adalah bundel HTML/CSS/JS statis tanpa ketergantungan API saat runtime.
Berapa ukuran masukan maksimum yang dapat ditangani konverter ini?
Konverter menyangga seluruh masukan di memori dan berjalan sinkron di utas utama, sehingga batas praktis bergantung pada perangkat Anda. Larik JSON hingga sekitar 10 MB (kira-kira 100.000 rekaman biasa) diratakan ke CSV tanpa jeda mencolok pada laptop modern. Di luar itu, UI dapat macet saat penulis berjalan. Konversi streaming menggunakan Web Worker plus penulis potongan adalah tindak lanjut yang direncanakan — untuk saat ini, pecah dataset yang sangat besar sebelum menempelkannya.
Bagaimana penulis menangani nilai yang mengandung koma, kutip, atau baris baru?
Sesuai RFC 4180. Nilai apa pun yang mengandung pemisah aktif, tanda kutip ganda, CR, atau LF dibungkus dengan tanda kutip ganda, dan kutip internal digandakan. Jadi nama seperti Bob, Jr. menjadi sel tunggal "Bob, Jr." dan tidak tumpah ke dua kolom, serta deskripsi multi-baris tetap dalam satu sel dan tidak memecah baris. Inilah bagian yang sering salah pada join(',') naif.
Apa yang terjadi pada objek JSON bersarang saat dikonversi ke CSV?
Objek bersarang ditangani sesuai sakelar Objek bersarang. Dalam mode Ratakan (default), kunci digabungkan dengan titik — {"user":{"id":1,"city":"Paris"}} menjadi kolom user.id dan user.city. Dalam mode Stringifikasi, objek bersarang diserialisasi sebagai satu nilai sel JSON dengan pelolosan kutip RFC 4180 tetap utuh, mempertahankan strukturnya untuk round-trip. Larik di dalam objek di-stringify JSON pada kedua mode.
Pemisah apa saja yang dapat digunakan keluaran CSV?
Empat: koma (,, default RFC 4180), titik koma (;, umum di locale Eropa), tab (\t, dialek TSV), dan pipa (|). Pilih yang diharapkan oleh alat hilir Anda. Penulis meng-escape sel apa pun yang kebetulan mengandung pemisah yang dipilih, sehingga pilihan ini tidak pernah merusak nilai.
Konverter JSON ke CSV ini meratakan larik Anda dan menghasilkan keluaran yang patuh RFC 4180 yang dapat Anda tempel langsung ke spreadsheet, laporan, atau tinjauan kode, tanpa mengunggah satu byte pun. Butuh kebalikannya? Konverter CSV ke JSON mengurai ke arah lain.