Frage

Duplizieren: Serialisierung zu JSON in jQuery

Es scheint, gibt es eine JSON Serializer / Deserializer in jQuery gebaut, da es in der Lage ist, Dinge wie .getJSON zu implementieren. Ist es möglich, die eingebaute jQuery JSON Prozessor selbst ein Allzweck-JSON-Prozessor zu verwenden (dh. Machen einen jQuery.something () aufrufen, meine eigenen Daten zu serialisieren / deserialisieren), wodurch die Notwendigkeit für eine separate JSON Bibliothek zu entfernen?

Update: Die Antworten auf die Frage oben sagen verwiesen gibt es keine JSON Serialisierung Code in jQuery. Wie wäre es JSON Deserialisierung? Wie wird .getJSON umgesetzt, und warum ist nicht die Deserialisierung-Fähigkeit für den allgemeinen Gebrauch ausgesetzt?

Update2: Ich verwende bereits json2 von json.org, ich versuche es, um loszuwerden, wie alles, was ich tue einfach Deserialisierung ist. Klingt wie jquery wirklich nur eval tut? Ich hatte den Eindruck , die nicht so gut für die Sicherheit war:

  

Die Funktion eval ist sehr schnell.   Allerdings kann es kompilieren und ausführen   jedes JavaScript-Programm, so kann es   sein Sicherheitsfragen

War es hilfreich?

Lösung

jQuery nicht verwendet nur eval () für den Moment. jQuery 1.4 wird die Unterstützung für die Browser-native JSON Deserialisierung in Browsern gehören, die es unterstützen. Sie können jetzt die Vorteile, dass nehmen, wenn Sie möchten, mit dataFilter Rückruf jQuery die eval (), wenn möglich (Put es in $ .ajaxSetup zu beeinflussen alle $ Schnipsel (), $ .post (), $ .getJSON () ruft automatisch) zu vermeiden.

Andere Tipps

Klingt wie, was Sie brauchen, ist die serialize / deserialize Implementierung finden Sie unter http: //www.json. org / js.html die Daten JSON.parse () und JSON.stringify (), so dass es leicht zu (de) serialisiert und Validierung zur Verfügung stellt.

Wenn Sie wollen einfach einen JSON-Text in ein Objekt zu übersetzen, dann verwenden Sie die Funktion eval ().

Ich habe gerade angefangen mit jQuery, und ich finde es ist am einfachsten, nur in der json2.js Bibliothek von JSON.org fallen zu lassen, dann erweitern jQuery es zu benutzen.

Ich glaube, die eingehenden Daten json jQuery nur eval () 's es deserialisieren. Ich weiß nicht, irgend serialziation in obwohl gebaut.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top