Jesteś tutaj: webmade.org >> porady >> javascript
autor: Patryk 'yarpo' Jar, ostatnia modyfikacja: 2007-09-07
JSON
Java Script Object Notation
XML
AJAX
JS JSON, to nie tyle technologia czy nowy język co inne spojrzenie na to co już istnieje. Być może nawet samo odkodowanie tego skrótu da już nam dużo więcej informacji: "Java Script Object Notation", czyli format wymiany danych, podobnie jak XML. Jednak XML (eXtensible Markup Language) ma w porównaniu z JSONem [wymawiane jak angielskie imię "dżejson"] jeden minus – do jego wykorzystania w projektach webmasterkich najczęściej potrzebujemy dodatkowych klas i obiektów (o czym więcej w poradzie klasa ObjTree).
JSON w JS może być szybko przetworzony w JS za pomocą funkcji eval(). Może zatem przykład danych:
(najpierw – trochę bardziej zrozumiałe, dla webmastera, dane w formacie XML):
<?xml version="1.0" encoding="utf-8"?> <dane> <user> <imie>jan</imie> <nazwisko>Kowalski</nazwisko> </user> <user> <imie>Piotr</imie> <nazwisko>Nowak</nazwisko> </user> </dane>
W JSON dane takie wyglądały następująco:
{
"dane" : {
"user" : [
{
"imie" : "Jan",
"nazwisko" : "Kowalski"
},
{
"imie" : "Piotr",
"nazwisko" : "Nowak"
}
]
}
}Przyjmijmy, że stosując AJAX takie dane otrzymujemy jako wynik działania skryptu na serwerze. W przypadku XML pewnie skorzystamy z metody responseXML() i następnie będziemy się bawić z odpowiednim pobieraniem danych – dla początkujące moze to być naprawdę niezbyt przyjemne (jeśli się korzysta z gołego obiektu XMLHttpRequest). W przypadku JSONa, polecałbym coś takiego:
/* Stworzenie obiektu XMLHttpRequest
wysłanie odpowiednich danych na serwer i uzykanie odpowiedzi:
*/
var json_tekst = HTTPrequest.responseText; // uzyskuje dane w postaci ciągu znaków
eval("var json_obiekt = ("+json_tekst+")");
for (i=0; i<json_obiekt.dane.user.length; i++)
alert( json_obiekt.dane.user[i].imie + ' ' +
json_obiekt.dane.user[i].nazwisko ); Oczywiście to tylko drobna część możliwości JSONa. Warto jednak o nim pamiętać, jeśli przyjdzie nam robić cokolwiek z danymi otrzymywanymi z serwera [niekoniecznie naszego, coraz częściej potrzebujemy danych z „obcych” serwerów].
Warto byłoby także zapoznać się z:
Patryk 'yarpo' Jar
szukaj:
JSON
Java Script Object Notation
XML
AJAX
JS
Osoby czytające tę publikację przeglądały również:
blog
porady
artykuły
recenzje
wiadomości

© 2004-2008 copyright by webmade.org