JSON untuk Pemula: Panduan Lengkap dengan Contoh
Kalau kamu pernah membuka pengaturan sebuah aplikasi, melihat data dari sebuah API, atau mengintip file konfigurasi sebuah website, kemungkinan besar kamu sudah pernah melihat JSON — bahkan tanpa menyadarinya. JSON ada di mana-mana di dunia digital modern: di balik aplikasi ojek online yang kamu pakai, di balik dashboard media sosialmu, di balik setiap website dinamis.
Tapi bagi banyak orang, JSON terlihat menakutkan: kurung kurawal, tanda kutip di mana-mana, koma yang kalau salah letak bikin semuanya error. Padahal, JSON adalah salah satu format data paling sederhana yang pernah dibuat — jauh lebih mudah dipahami daripada kelihatannya.
Artikel ini adalah panduan JSON dari nol: apa itu JSON, kenapa ia dipakai di mana-mana, struktur dasarnya dengan contoh nyata berbahasa Indonesia, tipe-tipe datanya, sampai cara membaca dan menuliskannya sendiri. Tidak perlu latar belakang programming — kalau kamu bisa membaca daftar belanja, kamu bisa membaca JSON.
Apa Itu JSON?
JSON adalah singkatan dari JavaScript Object Notation. Jangan terkecoh oleh namanya — walaupun lahir dari dunia JavaScript, JSON sekarang dipakai oleh hampir semua bahasa pemrograman: Python, PHP, Java, Go, dan lainnya.
Definisi sederhananya: JSON adalah cara menulis data terstruktur dalam bentuk teks biasa sehingga bisa dibaca manusia sekaligus diproses mesin.
Analogi yang paling pas: bayangkan kartu data siswa di tata usaha sekolah. Kartu itu punya kolom-kolom: nama, kelas, tanggal lahir, alamat. JSON adalah versi digital dari kartu seperti itu — hanya saja ditulis sebagai teks yang bisa dikirim lewat internet, disimpan sebagai file, dan dibaca oleh program.
Contoh — data satu siswa dalam JSON:
{
"nama": "Putri Ayu Lestari",
"kelas": "XII IPA 2",
"tanggal_lahir": "2008-05-14",
"aktif": true
}
Bahkan tanpa penjelasan pun kamu mungkin sudah bisa menebak artinya: nama siswanya Putri Ayu Lestari, kelas XII IPA 2, lahir 14 Mei 2008, dan statusnya aktif. Itulah keindahan JSON — ia bisa dibaca manusia.
Kenapa JSON Dipakai di Mana-Mana?
Sebelum JSON populer, data dikirim dalam format seperti XML yang verbos dan berat:
<siswa>
<nama>Putri Ayu Lestari</nama>
<kelas>XII IPA 2</kelas>
</siswa>
Bandingkan dengan JSON yang sama — jauh lebih ringkas. Alasan JSON menang:
- Ringan: ukuran datanya kecil, penting untuk aplikasi HP yang memakai kuota internet.
- Mudah dibaca manusia: kamu bisa membuka file JSON di notepad dan langsung paham isinya.
- Didukung semua bahasa pemrograman: setiap bahasa modern punya fungsi bawaan untuk membaca dan menulis JSON.
- Fondasi API modern: hampir semua layanan web (API) berkomunikasi memakai JSON — dari aplikasi perbankan sampai media sosial.
- Fleksibel: strukturnya bisa sederhana atau bertingkat sesuai kebutuhan, tanpa skema kaku.
Faktanya: kalau kamu membuka developer tools di browser dan melihat tab Network saat memakai sebuah website modern, kamu akan melihat lalu-lalang data JSON di balik layarnya.
Aturan Main Dasar JSON
JSON hanya punya sedikit aturan, tapi aturan ini mutlak. Hafalkan lima ini:
- Data ditulis sebagai pasangan kunci-nilai (key-value):
"nama": "Budi". Kunci selalu diapit tanda kutip dua. - Kunci selalu memakai tanda kutip dua (
"), bukan kutip satu (')."nama"benar,'nama'salah. - Setiap pasangan dipisahkan koma — kecuali pasangan terakhir. Koma yang tertinggal di akhir (trailing comma) adalah error.
- Objek diapit kurung kurawal
{ }, daftar diapit kurung siku[ ]. - File JSON adalah teks biasa — bisa dibuka dan diedit di notepad mana pun.
Contoh salah vs benar:
// SALAH - kunci tanpa kutip, koma di akhir
{
nama: "Budi",
umur: 25,
}
// BENAR
{
"nama": "Budi",
"umur": 25
}
Dua kesalahan kecil itu — kutip dan koma — adalah penyebab 90% error JSON yang dialami pemula. Kabar baiknya, tool formatter JSON bisa langsung menunjukkan di baris mana kesalahanmu berada.
Tipe Data dalam JSON
JSON hanya mengenal enam tipe data. Kuasai keenamnya, dan kamu menguasai seluruh "kosakata" JSON:
1. String (Teks)
Teks apa pun yang diapit tanda kutip dua:
{
"nama": "Agus Setiawan",
"kota": "Surabaya",
"catatan": "Pelanggan sejak 2021"
}
String bisa berisi huruf, angka, spasi, dan simbol — selama diapit kutip dua, semuanya dianggap teks. "telepon": "081234567890" adalah string (teks), bukan angka — dan itu disengaja, karena nomor telepon tidak untuk dihitung.
2. Number (Angka)
Angka ditulis tanpa tanda kutip — bisa bulat maupun desimal, bisa negatif:
{
"umur": 25,
"tinggi_cm": 170.5,
"saldo": -50000,
"jumlah_anak": 0
}
Perbedaan "25" (string) dan 25 (number) penting: program memperlakukan keduanya berbeda. Umur untuk dihitung → number. Nomor telepon yang diawali 0 → string (karena angka 0812 sebagai number akan kehilangan nol depannya).
3. Boolean (Benar/Salah)
Hanya dua nilai: true atau false — ditulis tanpa kutip, huruf kecil semua:
{
"sudah_bayar": true,
"member_premium": false
}
Boolean adalah cara JSON menyatakan status ya/tidak, aktif/nonaktif, lunas/belum.
4. Null (Kosong)
null berarti "tidak ada nilai" — ditulis tanpa kutip:
{
"nama_pasangan": null,
"tanggal_keluar": null
}
Bedakan dengan string kosong "": null berarti datanya memang tidak ada/belum diisi, sedangkan "" berarti datanya ada tapi kosong. Mirip perbedaan antara "kolom dikosongkan" dan "kolom tidak disediakan".
5. Array (Daftar)
Daftar berisi beberapa nilai, diapit kurung siku, dipisahkan koma:
{
"hobi": ["membaca", "bersepeda", "memasak"],
"nilai_ujian": [85, 90, 78, 92]
}
Isi array boleh campuran tipe data, tapi praktik yang baik: satu array berisi satu jenis data. Urutan dalam array itu penting — "hobi"[0] adalah "membaca".
6. Object (Objek Bersarang)
Nilai bisa berupa objek lain — inilah yang membuat JSON bisa merepresentasikan data yang kompleks:
{
"nama": "Dewi Sartika",
"alamat": {
"jalan": "Jl. Merdeka No. 45",
"kota": "Bandung",
"kode_pos": "40115"
},
"kontak_darurat": {
"nama": "Rina Marlina",
"hubungan": "ibu",
"telepon": "081298765432"
}
}
Perhatikan: alamat bukan string, melainkan objek yang berisi tiga kunci lagi. Struktur bersarang seperti ini sangat umum di data nyata.
Contoh Lengkap: Data Produk Toko Online
Mari gabungkan semuanya dalam satu contoh realistis — data produk di toko online:
{
"id_produk": "TSH-001",
"nama": "Kaos Polos Premium",
"harga": 89900,
"stok": 150,
"tersedia": true,
"diskon_persen": null,
"warna_tersedia": ["hitam", "putih", "navy", "maroon"],
"ukuran_tersedia": ["S", "M", "L", "XL"],
"detail": {
"bahan": "cotton combed 30s",
"berat_gram": 180,
"asal": "Bandung"
},
"rating": {
"rata_rata": 4.8,
"jumlah_ulasan": 1250
}
}
Bacalah dari atas ke bawah seperti membaca kartu produk: ID-nya TSH-001, namanya Kaos Polos Premium, harganya Rp89.900, stok 150, tersedia, belum ada diskon, warnanya ada empat pilihan, ukurannya S sampai XL, bahannya cotton combed, rating 4.8 dari 1250 ulasan. Semua informasi produk dalam satu struktur rapi.
Inilah tepatnya data yang dikirim server ke aplikasimu saat kamu membuka halaman produk di marketplace — hanya saja biasanya dalam bahasa Inggris dan jauh lebih panjang.
JSON vs Format Lain: Kapan Memakai Apa?
| Format | Kelebihan | Cocok untuk | |—|—|—| | JSON | Ringan, mudah dibaca, universal | API, konfigurasi, pertukaran data | | XML | Validasi skema ketat | Dokumen resmi, standar industri lama | | CSV | Paling ringkas untuk tabel | Spreadsheet, ekspor data tabular | | YAML | Sangat mudah dibaca manusia | File konfigurasi (DevOps) |
Untuk pertukaran data antar sistem modern, JSON adalah pilihan default. Kamu akan lebih sering bertemu JSON daripada ketiganya digabungkan.
Cara Membaca File JSON
Kamu tidak butuh software khusus:
- Notepad biasa — file
.jsonadalah teks biasa. Klik kanan → Open with → Notepad/TextEdit. Untuk file kecil, ini cukup. - JSON Formatter online — untuk file yang panjang dan berantakan (satu baris raksasa), tempel isinya ke formatter: ia akan merapikannya dengan indentasi dan memberi warna pada tiap tipe data sehingga mudah dibaca.
- VS Code / editor kode — kalau kamu mulai serius, editor seperti VS Code memberi pewarnaan sintaks dan peringatan error otomatis.
- Browser — sebagian browser modern menampilkan file JSON dengan rapi saat dibuka langsung.
Tips untuk file JSON yang tampil sebagai satu baris panjang menakutkan: jangan panik. Itu normal — namanya minified JSON, dibuat agar ukurannya kecil saat dikirim lewat internet. Tempel saja ke formatter, dan ia akan "mengembang" menjadi struktur rapi dalam sekejap.
Cara Menulis JSON Sendiri (Latihan Pertama)
Coba tulis data dirimu sendiri dalam JSON. Ikuti pola ini:
{
"nama": "Tulis namamu",
"kota": "Kotamu",
"umur": 25,
"mahasiswa": true,
"hobi": ["hobi 1", "hobi 2"],
"alamat": {
"jalan": "Jalan ...",
"kode_pos": "....."
}
}
Setelah menulis, validasi hasilnya:
- Tulis draf awalmu di notepad online agar tidak hilang.
- Tempel ke JSON Formatter dan jalankan validasi.
- Kalau ada error, formatter akan menunjukkan baris dan jenis kesalahannya — perbaiki, lalu validasi lagi sampai lolos.
Latihan kecil ini mengajarkan lebih banyak daripada membaca teori sepuluh halaman. Kesalahan yang kamu buat dan perbaiki sendiri akan menempel di ingatan.
5 Kesalahan Klasik Pemula (dan Cara Menghindarinya)
- Kutip satu, bukan kutip dua —
'nama'salah,"nama"benar. Kebiasaan dari bahasa pemrograman lain sering terbawa ke sini. - Koma setelah elemen terakhir —
{"a": 1,}salah. Hapus koma terakhir itu. - Komentar di dalam JSON — JSON murni tidak mendukung komentar
//. Kalau butuh catatan, simpan di luar file JSON. - Angka berawalan nol —
{"kode": 0812}salah (angka tidak boleh diawali 0, kecuali 0 itu sendiri). Pakai string:{"kode": "0812"}. - Kurung tidak berpasangan — setiap
{harus punya}, setiap[punya]. Untuk JSON panjang, formatter dengan pewarnaan sintaks membuat kesalahan ini langsung terlihat.
Latihan Bertahap: Dari Mudah ke Menantang
Teori tanpa praktik cepat menguap. Berikut tiga level latihan yang membawa pemahamanmu dari nol sampai percaya diri — total waktu sekitar satu jam:
Level 1: Baca (15 menit)
Buka contoh data produk toko online di artikel ini. Tanpa melihat penjelasan, coba jawab:
- Berapa harga produknya? (Jawaban: 89900)
- Apa bahan produknya? (Jawaban ada di jalur
detail.bahan) - Berapa total nilai stoknya jika harga × stok? (89900 × 150 = 13.485.000)
Kalau kamu bisa menjawab ketiganya tanpa bantuan, selamat — kamu sudah bisa membaca JSON.
Level 2: Tulis (20 menit)
Tulis data berikut dalam JSON: sebuah film favoritmu — judul, tahun rilis, durasi menit (number), sudah ditonton (boolean), daftar 3 pemeran utama (array), dan sutradara sebagai objek berisi nama dan negara asal.
Setelah selesai, tempel ke JSON Formatter untuk validasi. Catat setiap error yang muncul — itulah pelajaran paling berhargamu hari ini.
Level 3: Perbaiki (25 menit)
Minta teman (atau buat sendiri) sebuah JSON yang sengaja diberi 5 kesalahan: trailing comma, kutip satu, kurung tidak berpasangan, angka berkutip yang seharusnya number, dan baris baru mentah di dalam string. Tukaran dengan temanmu dan berlomba menemukan kelima kesalahan itu — lalu verifikasi dengan formatter siapa yang benar.
Tiga level ini mensimulasikan persis pekerjaan nyata dengan JSON: membaca data orang lain, menulis data sendiri, dan memperbaiki data yang rusak. Kuasai ketiganya, dan label "pemula" bisa kamu lepas.
JSON dalam Kehidupan Sehari-Harimu (Tanpa Kamu Sadari)
Kamu berinteraksi dengan JSON setiap hari — hanya saja tidak melihatnya. Beberapa contoh:
- Aplikasi ojek online: saat kamu memesan, aplikasimu mengirim JSON berisi lokasi jemput, tujuan, dan jenis layanan ke server; server membalas JSON berisi driver terdekat, estimasi harga, dan waktu tiba.
- Media sosial: timeline-mu adalah array objek JSON — setiap postingan adalah objek berisi teks, penulis (objek bersarang), jumlah like (number), dan daftar komentar (array).
- E-commerce: filter "harga di bawah 100 ribu" yang kamu pakai sebenarnya meminta server mengirim JSON produk yang harganya memenuhi syarat.
- Pengaturan aplikasi: banyak aplikasi menyimpan preferensimu (bahasa, tema gelap/mati, notifikasi nyala/mati) sebagai file JSON di perangkatmu.
Menyadari hal ini mengubah caramu melihat teknologi: di balik setiap aplikasi yang "ajaib", ada data terstruktur sederhana yang bolak-balik — dan sekarang kamu bisa membacanya.
Kamus Cepat: Istilah JSON yang Sering Membingungkan
Dunia JSON punya kosakata sendiri. Berikut istilah yang paling sering bikin pemula mengernyit — dijelaskan dengan bahasa sehari-hari:
- Key / Kunci: nama label data, misalnya
"nama". Selalu string berkutip dua. - Value / Nilai: isi datanya — bisa string, number, boolean, null, array, atau object.
- Object / Objek: kumpulan pasangan kunci-nilai dalam
{ }. Analoginya: satu kartu data. - Array: daftar berurutan dalam
[ ]. Analoginya: tumpukan kartu data sejenis. - Nesting: objek di dalam objek (bertingkat). Analoginya: map di dalam map.
- Parse / Parsing: proses komputer membaca teks JSON menjadi data yang bisa dipakai program.
- Serialize: kebalikannya — mengubah data program menjadi teks JSON untuk dikirim/disimpan.
- Valid / Invalid: JSON valid = mengikuti semua aturan sehingga bisa di-parse; invalid = ada yang melanggar aturan.
- Minify: membuang semua spasi/baris tak esensial agar ukuran minimal.
- Pretty print: merapikan JSON dengan indentasi agar mudah dibaca manusia.
- Schema: "cetakan" yang mendeskripsikan struktur JSON yang diharapkan — kunci apa saja, tipe datanya apa. Tidak wajib, tapi berguna untuk validasi data penting.
- Endpoint: alamat URL API yang mengembalikan JSON — misalnya "pintu" tempat kamu meminta data.
Hafal istilah ini dan kamu akan memahami 90% diskusi teknis tentang JSON — baik di forum, dokumentasi, maupun saat berkolaborasi dengan programmer.
FAQ Seputar JSON untuk Pemula
1. Apakah JSON sama dengan JavaScript? Tidak, walaupun namanya mengandung "JavaScript". JSON adalah format data teks yang independen — ia bisa dibuat dan dibaca oleh Python, PHP, Java, dan hampir semua bahasa pemrograman modern. Namanya hanya mencerminkan sejarah kelahirannya dari sintaks objek JavaScript.
2. Apakah saya harus bisa programming untuk memahami JSON? Tidak. Membaca JSON hanya butuh pemahaman enam tipe data dan aturan kurung-kutip-koma yang dibahas di artikel ini. Menulis JSON sederhana juga bisa dilakukan siapa saja. Kamu baru butuh programming kalau ingin memproses JSON secara otomatis dalam aplikasi.
3. Apa bedanya JSON dengan XML? Keduanya format pertukaran data, tapi JSON jauh lebih ringkas dan mudah dibaca manusia. XML memakai tag pembuka-penutup yang verbos (<nama>...</nama>), sedangkan JSON memakai struktur kurung yang minimal. Untuk API dan aplikasi modern, JSON adalah standar yang hampir selalu dipilih.
4. Kenapa file JSON kadang tampil sebagai satu baris panjang yang membingungkan? Itu disebut minified JSON — semua spasi dan baris baru dibuang agar ukuran file sekecil mungkin untuk dikirim lewat internet. Isinya sama persis dengan versi rapinya. Tempel saja ke JSON formatter online dan ia akan ditampilkan dengan indentasi yang mudah dibaca.
5. Di mana saya bisa berlatih menulis dan memeriksa JSON? Tulis drafmu di notepad online apa pun, lalu tempel ke JSON Formatter untuk divalidasi dan dirapikan. Formatter akan memberi tahu persis di baris mana kesalahanmu — cara tercepat untuk belajar dari kesalahan sendiri.
Kesimpulan
JSON terlihat teknis, tapi intinya sederhana: cara menulis data sebagai pasangan kunci-nilai dalam teks biasa. Enam tipe data (string, number, boolean, null, array, object), lima aturan main (kutip dua, koma pemisah, kurung berpasangan), dan kamu sudah bisa membaca 90% JSON yang beredar di dunia nyata.
Langkah selanjutnya yang paling efektif: praktik langsung. Tulis data dirimu dalam JSON, validasi dengan formatter, sengaja buat kesalahan dan perbaiki — dalam satu jam latihan, JSON akan berubah dari "kode menakutkan" menjadi "daftar yang rapi".
Siap mencoba? Tulis JSON pertamamu sekarang, lalu tempel ke JSON Formatter gratis dari editpad.id/ untuk memeriksa apakah sudah valid — lengkap dengan penjelasan error berbahasa sederhana kalau ada yang salah. Selamat ngoding data!
