Serializzatore / deserializzatore json per uso generico in jQuery?
Domanda
Duplica: Serializzazione su JSON in jQuery
Sembra che ci sia un serializzatore / deserializzatore JSON integrato in jQuery, poiché è in grado di implementare cose come .getJSON. È possibile utilizzare lo stesso processore JSON jQuery integrato come processore JSON generico (ovvero effettuare una chiamata jQuery.something () per serializzare / deserializzare i miei dati), eliminando la necessità di una libreria JSON separata?
Aggiornamento: le risposte alla domanda sopra citata dicono che non esiste un codice di serializzazione JSON in jQuery. Che ne dici di deserializzazione JSON? Come viene implementato .getJSON e perché la capacità di deserializzazione non è esposta per uso generale?
Aggiornamento2: sto già usando json2 da json.org, sto provando a liberarmene poiché tutto ciò che sto facendo è una semplice deserializzazione. Sembra che jquery stia davvero facendo solo valutazione? Ho avuto l'impressione che non era così buona per la sicurezza :
La funzione eval è molto veloce. Tuttavia, può compilare ed eseguire qualsiasi programma JavaScript, quindi è possibile essere problemi di sicurezza
Soluzione
jQuery per ora usa solo eval (). jQuery 1.4 includerà il supporto per la deserializzazione JSON nativa del browser nei browser che la supportano. Puoi approfittarne ora se vuoi, <
Altri suggerimenti
Sembra che ciò di cui hai bisogno sia l'implementazione serializzata / deserializzata disponibile su http: //www.json. org / js.html che fornisce JSON.parse () e JSON.stringify (), facilitando (de) serializzare e validare i dati.
Se vuoi semplicemente tradurre un testo JSON in un oggetto, usa la funzione eval ().
Ho appena iniziato a utilizzare jQuery e trovo che sia più semplice rilasciare la libreria JSON2.js da JSON.org in, quindi estendere jQuery per usarla.
Credo di deserializzare i dati json in arrivo jQuery lo eval (). Non conosco nessuna serializzazione integrata.