JSON Basic
JSON – JavaScript Object Notation (baca: jeisen) sekarang mulai popular digunakan sebagai format pertukaran data menggantikan XML. Beberapa keunggulan JSON antara lain:
- ukurannya lebih kecil dibanding XML (ukuran XML membengkak karena overhead nama tag)
- human-readable (walaupun kalau ukurannya besar teler juga membacanya)
- karena kecil, pertukaran datanya cepat
- sudah mulai banyak parser yang mendukung JSON (tentu saja JavaScript mendukungnya)
JSON hanya bisa digunakan untuk data yang terstruktur (XML mempunyai keunggulan untuk meng-handle data yang tidak terstruktur). Tipe data yang didukung oleh JSON antara lain: string, number (integer/floating), boolean (true/false), array, dan null.
Basic Grammar
- format JSON merepresentasikan sebuah object atau array of objects.
- sebuah object, dimulai dengan { dan ditutup dengan }
- sebuah array, dimulai dengan [ dan ditutup dengan ]
- dalam object terdapat pair yang merepresentasikan nama pair dan nilainya
- pair dan nilainya dipisahkan dengan tanda :
- nama pair, harus dalam string
- string harus di-encode dalam Unicode dan dimulai dengan ” dan ditutup dengan “
- string tertentu harus di-escape dengan \ yaitu: ” \ / \b \f \n \r\t \uXXXX
- nilai true, false, null harus ditulis dalam huruf kecil
Contoh
Biar mudah kita coba representasikan sebuah data ke dalam notasi object:
Object->nama = "Mario Tegal"
->umur = 40
->telepon[0] = "0856"
->telepon[1] = "0857"
->pekerjaan->nama = "PT. Motivator"
->alamat = "Jakarta"
->telepon[0] = "021-111"
->telepon[1] = "021-222"
Data di atas dapat ditulis dalam format JSON sebagai berikut:
{
"nama" : "Mario Tegal",
"umur" : 40,
"telepon" : ["0856", "0857"],
"pekerjaan" :
{
"nama" : "PT. Motivator",
"alamat" : "Jakarta",
"telepon" : ["021-111", "021-222"]
}
}
Dalam XML dapat dituliskan seperti ini:
<?xml version="1.0" encoding="ISO-8859-1"?> <kontak> <nama>Mario Tegal</nama> <umur>40</umur> <telepon id="0">0856</telepon> <telepon id="1">0857</telepon> <pekerjaan> <nama>PT. Motivator</nama> <alamat>Jakarta</alamat> <telepon id="0">021-111</telepon> <telepon id="1">021-222</telepon> </pekerjaan> </kontak>
Referensi:
Advertisement
Leave a Comment