DAJP programmers group
Reklama
CMS, dogonić przyszłość

„Świat się zmienia, czuję to w wodzie, czuję to w ziemi, wyczuwam to w powietrzu...”. Słowa wypowiedziane przez Arwenę, bohaterkę trylogii Tolkiena, są aktualne również dla naszej rzeczywistości. Wszystko, co nas otacza jest dynamiczne, podlega ciągłemu rozwojowi. W szczególny sposób dostrzegamy to w świecie wirtualnym, jakim jest Internet.

czytaj więcej...

JSON – lekka alternatywa dla XML

Drukuj Email
Wpisany przez Adam Jędrzejewski Poprawiony 16.10.10
JSON - lekka alternatywa dla XML

Czy pamiętacie Jasona z Gwiezdnego Patrolu lub Jasona Argonautę wyprawiającego się po złote runo? To mityczne imię męskie określa również najważniejsze „dziecko” Douglasa Crockforda, jednego z najwybitniejszych programistów związanych z JavaScript.

JSON (wymawiane jak imię „Jason”) to skrót od „JavaScript Object Notation” i jest tekstowym formatem wymiany danych. Autor JSON’a zaproponował go jako lżejszą alternatywę dla XML, który zaprojektowano przede wszystkim z myślą o przechowywaniu danych. Wszystko, co zostało zapamiętane jako dokument XML można także zapamiętać jako dokument JSON. Tak jak XML, JSON jest formatem wyłącznie tekstowy, a podstawowa jego zaleta to łatwość interpretacji w skryptach JavaScript, bo w gruncie rzeczy jest to kod tego języka.

prezentacja
PREZENTACJA
quiz
QUIZ

Rozważmy dane zapisane w XML jako:

<person>
   <name>Adam</name>
   <surname>Jędrzejewski</surname>
   <email>jedrzejewski@op.pl</email>
</person>

Aby wydostać z powyższego kodu poszczególne wartości przy pomocy funkcji napisanej w JavaScript musielibyśmy wykorzystać obiekt DOM i poddać go wielu zabiegom. Zmiana notacji przykładu na JSON wszystko upraszcza:

var person = function() {
   this.name = "Adam";
   this.surname = "Jędrzejewski";
   this.email = "jedrzejewski@op.pl";
}

Teraz name, surname i email są właściwościami obiektu person, który możemy przedstawić w postaci zwartej jako:

{„person”:{
   "name":"Adam",
   "surname":"Jędrzejewski",
   "email":"jedrzejewski@op.pl"
   }
}

Postać zwartą obiektu charakteryzuje fakt, iż poszczególne wartości przypisuje się za pomocą dwukropków, przypisania oddziela przecinkami, a cały obiekt znajduje się w nawiasach klamrowych. Zagnieżdżenia nawiasów klamrowych definiują kolejne poziomy informacji.

Dodatkową zaletą stosowania JSON jest fakt, iż w gruncie rzeczy jest to format niezależny od języka programowania. Wiele języków programowania, w tym Perl, C, Python, ActionScript, C#, ColdFusion, E, Java, ML, Objective CAML, PHP, REBOL oraz Ruby wspiera ten format danych poprzez dodatkowe pakiety bądź biblioteki.

 
Wszystkie artykuły