Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
JSON (JavaScript Object Notation) è un formato di interscambio dati semplice e leggero basato su un subset della notazione letterale oggetto del linguaggio JavaScript. Il motore JavaScript in Windows Internet Explorer 8 implementa la proposta JSON ECMAScript 3.1 per le funzioni di gestione JSON native (che usa 'API json2.js douglas Crockford).
Internet Explorer 8 include un oggetto JSON nativo conforme al supporto JSON descritto nella ES3.1 Proposal Working Draft. Alcune pagine Web rilevano l'oggetto JSON nativo e quindi lo usano in modo non standard. Questo utilizzo provoca in genere un errore di script e interrompe la gestione delle richieste AJAX. L'esempio di codice seguente illustra il modo errato per usare l'oggetto JSON.
if(!window.JSON) JSON = myJSON;
JSON.encode(obj); // Not part of the standard
L'esempio di codice seguente mostra invece un buon modo per usare l'oggetto JSON.
JSON = myJSON;
JSON.encode(obj);
Windows Internet Explorer include il supporto nativo per JSON introducendo un oggetto JSON globale con due metodi predefiniti: stringify e analizzare. L'oggetto JSON globale viene definito nel motore JavaScript e viene creato durante la fase di inizializzazione del motore. Per mantenere la compatibilità con le versioni precedenti, questa funzionalità è disponibile solo quando un sito Web usa la versione più recente delle funzionalità JavaScript usando la modalità di layout "Standard di Internet Explorer 8" (documento). Questa funzionalità può influire anche sul comportamento delle pagine Web che dipendono da una variabile globale JSON o che usano json2.js.
È possibile eseguire l'override dell'oggetto JSON globale. Tuttavia, quando una pagina Web usa la modalità di layout "Standard di Internet Explorer 8" (documento), non è più un oggetto non definito. Poiché JSON viene creata un'istanza come nome globale dal motore JavaScript, controlla come "if(!this). JSON)" restituisce False e deve essere modificato nel codice utente.
È probabile che le pagine Web che usano json2.js non siano interessate. Con poche eccezioni, queste pagine dovrebbero funzionare più velocemente. Le eccezioni sono a causa delle differenze tra l'implementazione JSON nativa di Internet Explorer e json2.js. Ad esempio, durante la serializzazione, l'implementazione JSON nativa rileva i cicli e non entra in ricorsione infinita come json.js. Per altre informazioni su queste eccezioni, vedere i blog JavaScript.
Per altre informazioni, vedere documentazione JSON e controllo delle versioni e del supporto della versione del motore JavaScript.
Argomenti correlati