Größengrenze fürs Einbinden von .js-Dateien?
Peter Keis
- javascript
0 Stephan0 Peter Keis0 Ed X0 Peter Keis0 peterS.0 Peter Keis0 peterS.
0 Stephan
0 Oliver García
Hallo ForumlerInnen,
ich habe eine .js-Datei, die ich mit <script src..></script> einbinde. Diese Datei ist ca. 950 KByte groß. Im Internet-Explorer klappt das ziemlich anstandslos. Der Netscape jedoch produziert minutenlange (evt. Stunden - hatte noch keine Lust das auszuprobieren) Festplattenzugriffe, ohne dass sich sonst irgendwas tut.
Hat jemand eine ungefähre Ahnung, wo das Problem zu suchen sein könnte?
Danke an alle
Peter
kleine frage: wie sieht das ganze unter netscape 6 oder mozilla aus???
Hallo ForumlerInnen,
ich habe eine .js-Datei, die ich mit <script src..></script> einbinde. Diese Datei ist ca. 950 KByte groß. Im Internet-Explorer klappt das ziemlich anstandslos. Der Netscape jedoch produziert minutenlange (evt. Stunden - hatte noch keine Lust das auszuprobieren) Festplattenzugriffe, ohne dass sich sonst irgendwas tut.
Hat jemand eine ungefähre Ahnung, wo das Problem zu suchen sein könnte?
Danke an alle
Peter
Hallo Stephan,
um ehrlich zu sein, das habe ich (noch) nicht ausprobiert. Inwiefern wäre es hilfreich, das zu wissen?
Es sieht im übrigen so aus, als würde NS in der Auslagerungsdatei ganz fürchterlich "herumfuhrwerken", denn auf einem System habe ich die Fehlermeldung "zu wenig virtueller Speicher" bekommen...
Peter
kleine frage: wie sieht das ganze unter netscape 6 oder mozilla aus???
Hallo ForumlerInnen,
ich habe eine .js-Datei, die ich mit <script src..></script> einbinde. Diese Datei ist ca. 950 KByte groß. Im Internet-Explorer klappt das ziemlich anstandslos. Der Netscape jedoch produziert minutenlange (evt. Stunden - hatte noch keine Lust das auszuprobieren) Festplattenzugriffe, ohne dass sich sonst irgendwas tut.
Hat jemand eine ungefähre Ahnung, wo das Problem zu suchen sein könnte?
Danke an alle
Peter
Hallo Peter,
erstens, es gibt gerüchte, die besagen dass bereits bei 32 Kb ein
Limit ist. Persönlich konnte ich das noch nicht verifizieren.
zweitens, was eigentlich macht die js. Datei und warum zum Geier
ist das Ding so riesig???
eine grobe angabe der funktionen wäre also sinnvoll.
es gibt gewisse string Operationen, die enorme Speichermengen
brauchen, wenn sie falsch implementiert werden.
Bye Ed X
Hi Ed X,
die Datei enthält die Definition von Arrays mit Schlagworten und eine Suchfunktion innerhalb dieser Schlagworte (offline-suche).
NS spinnt allerdings schon bei der Ausführung der init(), mit der die Array "bestückt" werden. Dabei ist noch keine einzige String-Funktion durchgeführt.
Die Bestückung ist ganz normal (hoffe ich) mit z.B.
x[0]="Begriff,Begriff1,Begriff2" +
"Begriff3,Begriff4,Begriff5" +
"Begriff6,Begriff7,Begriff8";
x[1]="...
.
.
(Leerzeichen nur zur besseren Übersichtlichkeit)
Und da eine ganze Menge großer Dateien indiziert werden, ergibt sich halt diese riesige Datei.
Bei Dateigrößen bis 300 KByte funktioniert das auch völlig problemlos (in NS UND IE), aber auch 950 KByte sind offensichtlich für den IE z.B. kein Problem.
Hilft Dir das vielleicht bei der Analyse? Ich bin nämlich mit meinem (zugegebenermaßen unvollkommenen) Latein am Ende :-(
Peter
hallo Peter K.,
um grosse datenmengen, halten zu koennen und trotzdem nicht
auf die vorteile von arrays zu verzichten, bin ich mittlerweile
dazu uebergegangen, diese daten in arrayschreibweise als strings
zu vereinbaren und nur diejenigen strings temporaer in arrays
umzuwandeln, die gerade fuer suchfunktionen (etc) gebraucht werden;
z.b.:
suchString01 = '['+
'[["begriff01"],["begriff02"],["begriff03"],["begriff04"],["begriff05"]],'+
'[["erklaerug01"],["erklaerug02"],["erklaerug03"],["erklaerug04"],["erklaerug05"]]'+
']';
suchString02 = '['+
'[["xyz01"],["xyz02"],["xyz03"],["xyz04"],["xyz05"]],'+
'[["abc01"],["abc02"],["abc03"],["abc04"],["abc05"]],'+
'[["ikl01"],["ikl02"],["ikl03"],["ikl04"],["ikl05"]]'+
']';
suchString03 = '[' + '[... ...]' + ']';
suchString04 = '[' + '[... ...]' + ']';
function macheDiesesUndJenes()
{tempArray01 = eval(suchString01);
tempArray02 = eval(suchString04);
...
}
obwohl ich noch nie datenmengen in der groessenordnung
Deines beispiels auf den NETSCAPE losgelassen habe, bin
ich mir ziemlich sicher, dass er mit den strings eher
zurechtkommt, da ihm am anfang nicht gleich der gesamte
speicher durch die vereinbarung von mehreren umfangreichen
und wohlmoeglich noch mehrdimensionalen arrays zugeschuettet
wird;
probier das doch mal aus, und falls ich auf dem holzweg war,
bitte ich um unbedingte rueckmeldung;
by(t)e by(t)e - peterS. - pseliger@gmx.net
Hallo Peter S.,
Ui!! Das war jetzt ein Vorschlag, der mein gesamtes Konzept völlig über den Haufen schmeißt.
Wenn ich das ausprobiere, dann muss ich mir auch ein völlig neues Suchkonzept überlegen. Das dauert Wochen. Falls ich das wirklich probiere melde ich mich auf jeden Fall (ob Erfolg oder Misserfolg).
Auf der anderen Seite mal ins Grobe überlegt:
Wenn ich erst Strings deklariere, die ich anschließend in Arrays umwandle, damit ich diese durchsuchen kann, wo ist dann der Speichergewinn? Oder hab' ich Dich grundsätzlich irgendwo falsch verstanden?
Peter K.
gruss Peter,
Auf der anderen Seite mal ins Grobe überlegt:
Wenn ich erst Strings deklariere, die ich anschließend in Arrays umwandle, damit ich diese durchsuchen kann, wo ist dann der Speichergewinn? Oder hab' ich Dich grundsätzlich irgendwo falsch verstanden?
Peter K.
mmh ... nun, ich bin weder informatiker noch habe ich mich jemals
wirklich um irgenwelche erkenntnisse bemueht, was hinter meinen
gestrickten programmen im speicher des rechners so ablaeuft, aber
aus meinen uralten BASIC-tagen auf einem kc85/1 ist mir noch
irgendwie im gedaechtnis haften geblieben, dass arrays und
operationen mit solchen besonders speicherintensiv waren, und
ich frage mich, warum das mit einer anderen interpreter-sprache,
die in einem nicht ganz ausgereiften programm laeuft, welches
meistens wiederum in einem nicht ganz ausgereiften betriebssystem
laeuft anders sein soll;
by(t)e by(t)e - peterS. - pseliger@gmx.net
hallo Peter
ich dachte, dass es netscape 6 vielleicht noch schaffen würde... langsam habe ich aber das gefühl, dass das wirklich an der grösse liegen könnte...
Hallo Stephan,
um ehrlich zu sein, das habe ich (noch) nicht ausprobiert. Inwiefern wäre es hilfreich, das zu wissen?
Es sieht im übrigen so aus, als würde NS in der Auslagerungsdatei ganz fürchterlich "herumfuhrwerken", denn auf einem System habe ich die Fehlermeldung "zu wenig virtueller Speicher" bekommen...
Peter
kleine frage: wie sieht das ganze unter netscape 6 oder mozilla aus???
Hallo ForumlerInnen,
ich habe eine .js-Datei, die ich mit <script src..></script> einbinde. Diese Datei ist ca. 950 KByte groß. Im Internet-Explorer klappt das ziemlich anstandslos. Der Netscape jedoch produziert minutenlange (evt. Stunden - hatte noch keine Lust das auszuprobieren) Festplattenzugriffe, ohne dass sich sonst irgendwas tut.
Hat jemand eine ungefähre Ahnung, wo das Problem zu suchen sein könnte?
Danke an alle
Peter
Hallo Peter,
ich habe eine .js-Datei, die ich mit <script src..></script> einbinde. Diese Datei ist ca. 950 KByte groß. Im Internet-Explorer klappt das ziemlich anstandslos. Der Netscape jedoch produziert minutenlange (evt. Stunden - hatte noch keine Lust das auszuprobieren) Festplattenzugriffe, ohne dass sich sonst irgendwas tut.
Hat jemand eine ungefähre Ahnung, wo das Problem zu suchen sein könnte?
Netscape bekommt massive Speicherprobleme mit js-Dateien, die Zeilen von mehr als 1000 Stellen (grob gesprochen) enthalten. Vielleicht haben sich ja in Deiner JS-Datei solche lange Zeilen eingeschlichen.
Gruß,
Oliver