2010-11-20 3 views
0

Ich mache Optimierung der Web-App, wo ich Listendaten im JSON-Format in so groß wie 1000 Objekte mit 100s von Attributen erhalten. Eval benötigte viel Zeit, um diese großen Daten zu parsen. Nachdem ich Internet und stackoverflow für einige Zeit gegraben habe, habe ich einen anderen Weg gefunden, JSON Daten vom Server 'Dynamic Javascript include' abzurufen.Abrufen von JSON mit Javascript enthalten, warum Unterschied zwischen Zeit für JS-Download und JS-Ausführung benötigt

Javascript enthält JSON Parsing sehr schnell, wie in Blogs angegeben. (Verifiziert mit Konsolenprotokolle in Fiebug). Aber es gibt einen Unterschied zwischen der Zeit, in der Javascript das Herunterladen und die Ausführung des Skripts beendet hat, und der großen, die zwischen 6 und 7 Sekunden lang ist. Irgendeine Idee, warum dies geschieht und irgendwelche Möglichkeiten, dies zu lösen?

+0

"... eval ..." - Sie kennen das native JSON-Objekt, oder? –

+0

Nein, ich habe nach einigem googlen nicht herausgefunden, dass es ein natives JSON-Objekt gibt, bei dem die Parse-Methode das JSON-Parsen schneller macht. Aber noch ein Problem, ich benutze mootools, das dieses JSON-Objekt überschreibt und seine Methode JSON.decode() hinzufügt, die nichts anderes als eval verwendet. Wie ich mein natives JSON-Objekt zurückbekomme, wenn ich mootools zusammen habe. – Vishwanath

+0

Wenn man sich die Quelle ansieht, wird klar, dass mootools das native JSON-Objekt https://github.com/mootools/mootools-core/blob/master/Source/Utilities/JSON.js nicht überschreibt # L19 Sie müssen 'JSON.parse()' verwenden, um die Zeichenfolgen in Objekte usw. umzuwandeln. –

Antwort

0

Beantworten Sie meine eigene Frage hier, nach weiteren graben fand ich heraus, dass das Problem nur auf meiner Maschine replizierbar war, und auf anderen Maschinen der Unterschied zwischen den genannten Prozess war sehr wenig, also denke, dass dies auch passieren kann viele Firefox-Addons, die ich benutzt habe. Nur eine Ratespiele. noch nicht sicher.

Verwandte Themen