Zeichen-Grenze von javascript-string-variable
Können JavaScript-string zu speichern 100K Zeichen?
Ich habe ein Skript geschrieben, wo ein string aus PHP übergeben wird, um eine variable in JavaScript. Es funktioniert, wenn es ist kurz geschnitten, um fast zehntausend Zeichen, sondern bricht das Skript beim Versuch, übergeben Sie die gesamte Zeichenfolge, deren Länge ist ein bisschen größer als 100K. Kein Fehler gefunden werden konnte obwohl. Gibt es eine Lösung für diese als auch für jede Art von zunehmenden Zeichen-Grenze von JavaScript-variable? Ich bin nur ein Anfänger. Würde schätzen, einige könnte man eine Lösung finden.
Was meinst du mit "bricht das Skript"?
Siehe stackoverflow.com/questions/5926263/... für einige relevante info. Meine Vermutung ist das limit in PHP, nicht in JS.
Öffnen Sie die JS-Konsole und versuchen Sie diese für sich selbst.
mein browser stürzt ab..
Siehe stackoverflow.com/questions/5926263/... für einige relevante info. Meine Vermutung ist das limit in PHP, nicht in JS.
Öffnen Sie die JS-Konsole und versuchen Sie diese für sich selbst.
str = ""; for(var i = 0; i < 100000; i++) { str = str + "x"; }
geben str
und drücken Sie die EINGABETASTE. Sehen, was passiert.mein browser stürzt ab..
InformationsquelleAutor Rohith | 2012-12-04
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gibt es keine theorical Grenze zu JS oder PHP auf die Größe Ihres strings.
Ich denke, es gibt ein paar mögliche Situationen.
Erstens, überprüfen, dass Sie nicht senden Ihren Text per HTTP GET. Gibt es eine maximale Größe für BEKOMMEN, und ich denke, die abhängig von Ihrem web-server.
Zweitens, wenn Sie verwenden Sie POST, check-in php.ini für post_max_size und sehen, ob es kleiner ist als die Größe der Zeichenfolge, die Sie senden, um es so gut wie Ihr .htacccess-Datei, um zu sehen, wenn Sie php_value post_max_size ist nicht zu klein.
Drittens, überprüfen Sie, dass in php.ini, die dein memory_limit nicht beschränken die Größe des Speichers, dass das Skript verwenden können.
hoffe, das hilft.
nur ein Schuss, aber haben Sie sich regenerieren jede einzelne Anführungszeichen oder doppelte Anführungszeichen, die verursachen können Ihre js zu brechen. haben Sie fliehen Sie vor der übergabe an js? Gibt es irgendwelche Fehler in der javascript-Konsole?
Es gibt keine Fehler in der javascript-Konsole. Keine einzelne und doppelte Anführungszeichen werden neu erstellt.
Ich habe sogar versucht die Zuweisung des Wertes von php direkt zu js wie ich hallte die Ausgabe von php und kopiert es, um das Skript statt der übergabe dynamisch. Noch hat es nicht funktioniert. Es ist seltsam, dass es nicht alle Fehler angezeigt.
würden Sie mir einfügen des Codes?
InformationsquelleAutor Aaron Lee
Den ECMAScript-Standard ECMA-262 (6. Auflage, Juni 2015) sagt
Also planen Sie nicht, sich mit mehr als 9,007,199,254,740,991 oder über 9 Billiarden Zeichen. Natürlich, Sie sollten bereit sein, für Systeme die nicht zuordnen 18 PB Speicher, als dies ist nicht erforderlich für die konformen ECMAScript-Implementierungen.
InformationsquelleAutor Charles