Apa itu JSON? Panduan Lengkap untuk Pemula
JSON (JavaScript Object Notation) adalah bahasa perantara (lingua franca) web modern — format yang dipakai hampir semua API, berkas konfigurasi, dan database NoSQL. Panduan ini membahas sintaks, enam tipe data, dan bagaimana JSON benar-benar digunakan.
Apa itu JSON?
JSON adalah format berbasis teks untuk merepresentasikan data terstruktur. Format ini diturunkan dari sintaks object literal JavaScript, tetapi bersifat agnostik terhadap bahasa: hampir semua bahasa pemrograman dapat membaca dan menghasilkan JSON.
JSON diperkenalkan oleh Douglas Crockford pada awal 2000-an sebagai alternatif yang lebih sederhana daripada XML. Saat ini JSON menjadi standar internasional (ECMA-404 / RFC 8259) dan format payload bawaan untuk REST API, GraphQL, dan sebagian besar layanan web.
Dasar-dasar sintaks JSON
JSON memiliki dua struktur: object (peta key/value yang dibungkus kurung kurawal) dan array (daftar terurut yang dibungkus kurung siku). Key harus berupa string dengan tanda kutip ganda; value dapat berupa salah satu dari enam tipe data.
{
"name": "Alice",
"age": 30,
"active": true,
"roles": ["admin", "editor"],
"address": {
"city": "San Francisco",
"zip": "94102"
},
"metadata": null
}Perhatikan aturannya: key menggunakan tanda kutip ganda (tanda kutip tunggal tidak valid), item dipisahkan dengan koma, dan tidak ada koma setelah item terakhir.
Enam tipe data
JSON mendukung tepat enam tipe data. Memahaminya adalah fondasi untuk bekerja dengan JSON apa pun.
string — teks dalam tanda kutip ganda, mis. "hello". number — bilangan bulat atau desimal, mis. 42 atau 3.14. boolean — true atau false (tanpa kutip). null — nilai kosong eksplisit. object — peta { } dari pasangan key/value. array — daftar terurut [ ].
Itu saja. JSON tidak punya tanggal, fungsi, ataupun undefined — semua itu harus dikodekan sebagai string atau dihilangkan. Kesederhanaan inilah yang membuat JSON begitu interoperabel secara universal.
Di mana JSON digunakan
API: hampir setiap endpoint REST dan GraphQL saling bertukar JSON. Konfigurasi: package.json, tsconfig.json, dan tak terhitung konfigurasi alat lain berformat JSON. Database: MongoDB, CouchDB, dan JSONB PostgreSQL menyimpan dokumen sebagai JSON. Pertukaran data: format jaringan (wire format) antara server dan peramban pada aplikasi web modern.
FAQ
- Apakah JSON sama dengan object JavaScript?
- Tidak. Sebuah object literal JavaScript dapat berisi fungsi, komentar, string berkutip tunggal, dan trailing comma. JSON lebih ketat: key harus berkutip ganda, tanpa fungsi, tanpa komentar. Setiap dokumen JSON yang valid adalah ekspresi JavaScript yang valid, tetapi tidak sebaliknya.
- Apakah JSON bisa berisi komentar?
- JSON standar tidak bisa. Beberapa alat (seperti JSONC di VS Code) mengizinkan komentar sebagai ekstensi, tetapi parser ketat seperti JSON.parse() akan menolaknya. Jika Anda memerlukan komentar, pertimbangkan JSON5, YAML, atau JSONC.
- Apa perbedaan antara JSON dan XML?
- JSON lebih ringan (tanpa closing tag), memetakan langsung ke struktur data native, dan lebih cepat diurai. XML lebih bertele-tele tetapi mendukung atribut, namespace, dan schema secara native. JSON menang di ranah API; XML bertahan di domain yang berbasis dokumen.
Artikel terkait
Sejarah JSON: Dari Tahun 2000 hingga Menjadi Standar Industri →
Telusuri JSON dari ide Douglas Crockford tahun 2001, diadopsi oleh Yahoo, hingga menjadi standar ECMA-404 yang menggerakkan 90% API modern.
Panduan Lengkap JSON Schema (Draft 7) →
JSON Schema adalah standar untuk mendeskripsikan dan memvalidasi struktur JSON. Pelajari keyword inti, bangun schema API nyata, dan terapkan praktik terbaik.
Contoh JSON dalam 7 Bahasa: JavaScript, Python, Go, Rust, PHP, Java, C# →
Contoh parsing dan serialisasi JSON siap produksi dalam tujuh bahasa — lengkap dengan penanganan error dan praktik terbaik.