2012-02-15 15 views
5

Używam do metody postu jQuery, aby wysłać trochę danych na serwer. Zamiast samodzielnie konstruować ciąg JSON, chciałbym po prostu użyć obiektu JavaScript. Kiedy otrzymam ciąg zwrotny (w JSON), chciałbym automatycznie skonstruować odpowiedni obiekt javascript. czy to możliwe?Serialize javascript object do json iz powrotem

Z góry dziękuję.

Odpowiedz

20

Zamówienie JSON.stringify() i JSON.parse() w JSON2 documentation

Przykład:

myData = JSON.parse(text); // from json string to js object 

var myJSONText = JSON.stringify(myObject, replacer); // js object to json string 
+0

Świetna wtyczka, dziękuję! – Ipad

6

Tak.

Jeśli obiekt JSON jest dostępny, można użyć:

var aString = JSON.stringify(anObject); 

przekształcić obiekt do JSON ciąg.

Można również przekonwertować ciąg do obiektu z

var obj = JSON.parse(aString) 

Aby mieć pewność, że JSON jest dostępny, można dołączyć ten plik https://github.com/douglascrockford/JSON-js

2

należy użyć Douglas Crockforda na JSON2 library.

W ten sposób, można:

var jsonString = JSON.stringify(obj); 

lub

var Obj = JSON.parse(jsonString); 
+2

Możesz to zrobić w każdym razie w nowoczesnych przeglądarkach. JSON2 jest polyfill (warto użyć) – Quentin

1

Jeśli używasz jQuery.getJSON, nie musisz przejmować się sznurowaniem i analizowaniem json, jquery robi to za ciebie.

+0

Dobrze wiedzieć, naprawdę. To samo, jeśli użyjesz $ .ajax z "json" jako typ danych. – CronosS

+0

@CronosS, tak. 'getJSON' jest skrótem dla $ .ajax z" json "jako dataType. –

Powiązane problemy