Apa itu JSON?

Dulu masih jarang ada Web yang dapat saling bertukar data dengan web lainnya seperti halnya facebook yang dapat saling bertukar data dengan web pihak ketiga atau bahkan aplikasi pihak ketiga. Namun setelah kehadiran XML sebagai format pertukaran data antar aplikasi (web/desktop) semuanya bukan tidak mungkin lagi untuk dilakukan.
Ya, sebelum adanya JSON, XML lah yang biasa digunakan untuk saling bertukar data dan hingga saat ini XML masih digunakan seperti pada RSS Feed yang mungkin menjadi santapan anda sehari-hari. XML sendiri adalah kependekan dari eXtensible Markup Language, jika anda senang “bercengkrama” dengan HTML anda akan familiar dengan XML, hanya saja tag-tag yang ada adalah buatan anda sendiri. Kira-kira beginilah format penulisan XML :
<phonebook>
               <contact>
                               <name>Rian Ariona</name>
                               <phone>+628572182XXXX</phone>
                               <address>Bandung</address>
               </contact>

               <contact>
                               <name>John Doe</name>
                               <phone>+169572582XXXX</phone>
                               <address>Los Angeles</address>
               </contact>

               <contact>
                               <name>George</name>
                               <phone>+196252145XXXX</phone>
                               <address>Kanada</address>
               </contact>
</phonebook>
Sangat mudah untuk dimengerti bukan, dan inilah format yang sering digunakan dalam pertukaran data suatu web.
XML Bukanlah Satu-satunya
Namun kini, telah hadir JSON sebagai format baru untuk pertukaran data web. JSON adalah kependekan dari JavaScript Object Notation. Penulisan format data menggunakan JSON sangatlah singkat karena menggunakan notasi-notasi javascript seperti kurung siku [] dan kurung kurawal {}. Jika kita konversi data XML di atas ke dalam format JSON, kira-kira menjadi seperti berikut :
{
               "phonebook" : {
                               "contact":[
                               {
                                              "name":"Rian Ariona",
                                              "phone":"+628572182XXXX",
                                              "address":"bandung"
                               },{
                                              "name":"John Doe",
                                              "phone":"+169572582XXXX",
                                              "address":"Los Angeles"
                               },{
                                              "name":"George",
                                              "phone":"+196252145XXXX",
                                              "address":"Kanada"
                               }
                               ]
               }
}
Dan berikut ini adalah contoh penggunaan JSON dalam HTML menggunakan javascript:
<!DOCTYPE HTML>
<html>
<head>
               <title>JSON</title>
               <script type="text/javascript">
                               var person={
                                                             "phonebook" : {
                                                                            "contact":[
                                                                            {
                                                                                            "fname":"Rian Ariona",
                                                                                            "phone":"+628572182XXXX",
                                                                                            "address":"bandung"
                                                                            },{
                                                                                            "fname":"John Doe",
                                                                                            "phone":"+169572582XXXX",
                                                                                            "address":"Los Angeles"
                                                                            },{
                                                                                            "fname":"George",
                                                                                            "phone":"+196252145XXXX",
                                                                                            "address":"Kanada"
                                                                            }
                                                                            ]
                                                             }
                                              }

                                              for(i=0;i<person.phonebook.contact.length;i++){
                                                             document.writeln(person.phonebook.contact[i].fname +"<br>");
                                                             document.writeln(person.phonebook.contact[i].phone +"<br>");
                                                             document.writeln(person.phonebook.contact[i].address +"<br><br>");
                                              }
               </script>
</head>
<body>
              
</body>
</html>
Dari kode diatas kita melakukan perulangan untuk pengambilan data-data yang terdapat di dalam objek berformat json lalu menampilkan semua data tersebut secara berurutan.
Simple & Fast
Karena kesederhanaan penulisan JSON, ukuran file yang dihasilkanpun menjadi lebih ramping dibandingkan XML (karena terus mengulangi kata yang sama dalam tag-tag yang digunakan). Hal ini berimbas pada kecepatan loading transfer data, pertukaran data JSON lebih cepat jika dibandingkan dengan XML.
Oleh karena itu banyak situs-situs besar yang menggunakan JSON sebagai format pertukaran data. Sebagai contoh, twitter menyediakan API untuk digunakan pada situs pihak ketiga atau aplikasi pihak ketiga misalnya twitter client (tweetdeck dll). Data yang dikirimkan dari hasil request berupa data berformat JSON.

Sumber :



0 komentar:

Posting Komentar