Wie kann ich das JavaScript-Skript ähnlich wie PHPs exit
oder beenden die
? Ich weiß, dass es nicht die beste Programmierpraxis ist, aber ich muss.
javascript
exit
die
Nir
quelle
quelle
return;
vielleicht genug werden je nach Ihren Anforderungen, verhält sich wie die () ohne Parameter.Antworten:
JavaScript-Äquivalent für PHPs
die
.exit()
Übrigens ruft es nur an (danke splattne):quelle
"exit" -Funktionen beenden normalerweise das Programm oder Skript zusammen mit einer Fehlermeldung als Parameter. Zum Beispiel sterben (...) in PHP
Das Äquivalent in JS besteht darin, einen Fehler mit dem Schlüsselwort throw wie folgt zu signalisieren :
Sie können dies leicht testen:
quelle
Selbst in einfachen Programmen ohne Handles, Ereignisse und dergleichen ist es am besten, Code in eine "Haupt" -Funktion einzufügen, selbst wenn dies die einzige Prozedur ist:
Auf diese Weise können Sie "return" verwenden, wenn Sie das Programm stoppen möchten.
quelle
Wenn es Ihnen egal ist, dass es sich um einen Fehler handelt, schreiben Sie einfach:
Dadurch wird verhindert, dass Ihr Hauptcode (global) fortfährt. Nützlich für einige Aspekte des Debuggens / Testens.
quelle
window.fail
ist in aktuellen Browsern nicht definiert.mikeyMouse;
- der Fehler wird beendet. Es ist schnell und schmutzig.Es gibt viele Möglichkeiten , ein JS- oder Node-Skript zu beenden. Hier sind die relevantesten:
Wenn Sie sich in der REPL befinden (dh nachdem Sie in
node
der Befehlszeile ausgeführt wurden), können Sie.exit
zum Beenden Folgendes eingeben .quelle
In meinem Fall habe ich die
window.stop
API verwendet, die dem Klicken auf die X-Schaltfläche in Ihrem Browser entspricht:quelle
Platzieren Sie das
debugger;
Schlüsselwort in Ihrem JavaScript-Code, wo Sie die Ausführung stoppen möchten. Öffnen Sie dann die Entwicklertools Ihres bevorzugten Browsers und laden Sie die Seite neu. Jetzt sollte es automatisch pausieren. Öffnen Sie den Abschnitt Quellen Ihrer Tools: Dasdebugger;
Schlüsselwort wird hervorgehoben und Sie haben die Möglichkeit, die Skriptausführung fortzusetzen.Ich hoffe, es hilft.
Mehr Informationen bei:
https://developer.mozilla.org/de/docs/Tools/Debugger
http://www.w3schools.com/js/js_debugging.asp
quelle
Ich denke, diese Frage wurde beantwortet. Klicken Sie hier, um weitere Informationen zu erhalten. Unten ist die kurze Antwort, die es veröffentlicht wird.
Sie können auch Ihren Browser verwenden, um Haltepunkte hinzuzufügen. Jeder Browser ist ähnlich. Überprüfen Sie die Informationen unten für Ihren Browser.
Für Informationen zu Chrome-Haltepunkten klicken Sie hier.
Für Informationen zu Firefox-Haltepunkten klicken Sie hier.
Für Informationen zu Explorer-Haltepunkten klicken Sie hier. Für Informationen zu
Safari-Haltepunkten klicken Sie hier
quelle
Wenn Sie nach einer Möglichkeit suchen, die Ausführung von Javascript auf einer Seite zwangsweise zu beenden, bin ich mir nicht sicher, ob es einen offiziell genehmigten Weg gibt, dies zu tun - es scheint die Art von Dingen zu sein, die ein Sicherheitsrisiko darstellen könnten (obwohl dies der Fall ist) Um ehrlich zu sein, ich kann mir nicht vorstellen, wie es auf meinem Kopf wäre. Wenn Sie in Javascript möchten, dass Ihr Code nicht mehr ausgeführt wird, können Sie normalerweise nur die
return
Funktion ausführen , die gerade ausgeführt wird. (Diereturn
Anweisung ist optional, wenn es das Letzte in der Funktion ist und die Funktion keinen Wert zurückgeben sollte.) Wenn es einen Grund gibt, warum die Rückgabe für Sie nicht gut genug ist, sollten Sie wahrscheinlich die Frage, warum Sie denken, detaillierter bearbeiten Sie brauchen es und vielleicht kann jemand eine alternative Lösung anbieten.Beachten Sie, dass in der Praxis die Javascript-Interpreter der meisten Browser das aktuelle Skript einfach nicht mehr ausführen, wenn ein Fehler auftritt. Sie können also beispielsweise auf ein Attribut einer nicht festgelegten Variablen zugreifen:
und es wird wahrscheinlich das Skript abbrechen. Aber darauf sollten Sie nicht zählen, weil es überhaupt nicht Standard ist und es wirklich wie eine schreckliche Praxis scheint.
EDIT : OK, vielleicht war dies angesichts von Ólafur keine so gute Antwort. Obwohl die
die()
Funktion, mit der er verknüpft ist, im Grunde meinen zweiten Absatz implementiert, gibt sie nur einen Fehler aus.quelle
werfen "";
Ist ein Missbrauch des Konzepts aber wahrscheinlich die einzige Option. Und ja, Sie müssen alle Ereignis-Listener zurücksetzen, genau wie in der akzeptierten Antwort erwähnt. Sie würden auch einen einzigen Einstiegspunkt benötigen, wenn ich recht habe.
Oben drauf: Sie möchten eine Seite, die Ihnen per E-Mail Bericht erstattet, sobald sie ausgelöst wird. Hierfür können Sie beispielsweise Raven / Sentry verwenden. Das heißt aber, Sie produzieren sich selbst falsch positiv. In diesem Fall müssen Sie auch den Standardhandler aktualisieren, um solche Ereignisse herauszufiltern, oder solche Ereignisse im Dashboard von Sentry auf Ignorieren setzen.
window.stop ();
Dies funktioniert beim Laden der Seite nicht. Die Dekodierung der Seite wird ebenfalls gestoppt. Sie können es also nicht wirklich verwenden, um dem Benutzer eine Javascript-freie Variante Ihrer Seite anzubieten.
Debugger;
Stoppt die Ausführung nur bei geöffnetem Debugger. Funktioniert super, ist aber kein Ergebnis.
quelle
In JavaScript gibt es mehrere Möglichkeiten, im Folgenden sind einige davon aufgeführt
Methode 1:
Methode 2:
Methode 3:
Methode 4:
Methode 5:
Schreiben Sie Ihre benutzerdefinierte Funktion mit der obigen Methode und rufen Sie an, wo Sie sie benötigen
Hinweis: Wenn Sie die Codeausführung nur anhalten möchten, können Sie sie verwenden
quelle
Diese kleine Funktion kommt der Nachahmung von PHPs exit () ziemlich nahe. Fügen Sie wie bei den anderen Lösungen nichts anderes hinzu.
quelle
Erstellen Sie einfach eine BOOL-Bedingung, ohne dass hier komplizierter Code erforderlich ist.
Wenn Sie es auch nur einmal auf true / oder mehrmals umstellen, erhalten Sie beide eine Lösungslinie / nicht mehrere - im Grunde genommen so einfach.
quelle
Wenn Sie eine undefinierte Funktion im Skript verwenden, wird das Skript aufgrund von "Uncaught ReferenceError" gestoppt. Ich habe versucht, indem ich dem folgenden Code gefolgt bin und die ersten beiden Zeilen ausgeführt habe.
Ich denke, dies ist der beste Weg, um das Skript zu stoppen. Wenn es einen anderen Weg gibt, kommentieren Sie mich bitte. Ich möchte auch einen anderen besten und einfachsten Weg kennenlernen. Übrigens habe ich in Javascript wie PHP keine Exit- oder Die-Funktion zum Beenden des Skripts erhalten. Wenn jemand es weiß, lass es mich wissen.
quelle
Wenn Sie nur verhindern möchten, dass weiterer Code ausgeführt wird, ohne einen Fehler zu "werfen", können Sie ihn vorübergehend überschreiben,
window.onerror
wie incross-exit
:quelle
Ich benutze iobroker und habe es leicht geschafft, das Skript mit zu stoppen
quelle
In den meisten Fällen nicht anwendbar, aber ich hatte viele asynchrone Skripte im Browser und als Hack mache ich das
alles zu stoppen.
quelle
Ich weiß, dass dies alt ist, aber wenn Sie eine ähnliche PHP-
die()
Funktion wünschen , können Sie Folgendes tun:Verwendung:
Im obigen Beispiel wird nur "Hallo" gedruckt.
quelle
Ich benutze diesen Code, um die Ausführung zu stoppen:
Sie werden zwar einen Konsolenfehler erhalten, aber er funktioniert gut für mich.
quelle
Dies ist ein Beispiel dafür, dass Sie das Skript beenden, wenn eine Bedingung vorliegt. Ich verwende dies in meinem clientseitigen SSE-Javascript, wenn das
kann nicht direkt aus der JSON-Analyse analysiert werden ...
... sowieso ist die allgemeine Idee:
Dadurch wird Ihr Javasript-Skript beendet / beendet
quelle
Ich benutze die return-Anweisung anstelle von throw, da throw einen Fehler in der Konsole verursacht. Der beste Weg, dies zu tun, besteht darin, den Zustand zu überprüfen
Dadurch wird die Ausführung des Programms in dieser Zeile einfach gestoppt, anstatt Fehler in der Konsole zu melden.
quelle
if (condition) { new new }
oder verwendenif (condition) { purpleMonkeyDishwasher(); }
.