Comment puis-je quitter le script JavaScript comme celui de PHP exit
ou die
? Je sais que ce n'est pas la meilleure pratique de programmation, mais j'en ai besoin.
javascript
exit
die
Nir
la source
la source
return;
pourrait être suffisant en fonction de vos besoins, agit comme matrice () sans paramètre.Réponses:
Équivalent JavaScript pour PHP
die
. BTW il appelle justeexit()
(merci splattne):la source
Les fonctions "exit" quittent généralement le programme ou le script avec un message d'erreur en tant que paramètre. Par exemple die (...) en php
L'équivalent dans JS est de signaler une erreur avec le mot clé throw comme ceci:
Vous pouvez facilement tester ceci:
la source
Même dans les programmes simples sans poignées, événements et autres, il est préférable de mettre du code dans une fonction "principale", même si c'est la seule procédure:
De cette façon, lorsque vous souhaitez arrêter le programme, vous pouvez utiliser "return".
la source
Si vous ne vous souciez pas que ce soit une erreur, écrivez simplement:
Cela empêchera votre code principal (global) de continuer. Utile pour certains aspects du débogage / test.
la source
window.fail
n'est pas défini dans les navigateurs actuels.mikeyMouse;
- l'erreur se terminera. C'est rapide et sale.Il existe de nombreuses façons de quitter un script JS ou Node. Voici les plus pertinents:
Si vous êtes dans le REPL (c'est-à-dire après avoir exécuté
node
sur la ligne de commande), vous pouvez taper.exit
pour quitter.la source
Dans mon cas, j'ai utilisé l'
window.stop
API, ce qui revient à cliquer sur le bouton X de votre navigateur:la source
Placez le
debugger;
mot - clé dans votre code JavaScript à l'endroit où vous souhaitez arrêter l'exécution. Ensuite, ouvrez les outils de développement de votre navigateur préféré et rechargez la page. Maintenant, il devrait s'arrêter automatiquement. Ouvrez la section Sources de vos outils: ledebugger;
mot-clé est mis en surbrillance et vous avez la possibilité de reprendre l'exécution du script.J'espère que cela aide.
Plus d'informations à:
https://developer.mozilla.org/de/docs/Tools/Debugger
http://www.w3schools.com/js/js_debugging.asp
la source
Je pense que cette question a été répondue, cliquez ici pour plus d'informations. Vous trouverez ci-dessous la réponse courte qui est publiée.
Vous pouvez également utiliser votre navigateur pour ajouter des points d'arrêt, chaque navigateur est similaire, vérifiez les informations ci-dessous pour votre navigateur.
Pour les informations sur les points d'arrêt de Chrome, cliquez ici
Pour les informations sur les points de rupture de Firefox, cliquez ici
Pour les informations sur les points de rupture de l'Explorateur,
cliquez ici.
la source
Si vous cherchez un moyen de mettre fin de force à l'exécution de tout Javascript sur une page, je ne suis pas sûr qu'il existe un moyen officiellement sanctionné de le faire - il semble que le genre de chose puisse constituer un risque pour la sécurité (bien que être honnête, je ne peux pas imaginer comment ce serait hors de ma tête). Normalement en Javascript, quand vous voulez que votre code s'arrête, vous venez
return
de n'importe quelle fonction en cours d'exécution. (L'return
instruction est facultative si c'est la dernière chose de la fonction et que la fonction ne doit pas renvoyer de valeur) S'il y a une raison pour laquelle le retour n'est pas assez bon pour vous, vous devriez probablement modifier plus en détail la question pour savoir pourquoi vous pensez vous en avez besoin et peut-être que quelqu'un peut vous proposer une solution alternative.Notez qu'en pratique, les interpréteurs Javascript de la plupart des navigateurs arrêteront simplement d'exécuter le script en cours s'ils rencontrent une erreur. Vous pouvez donc faire quelque chose comme accéder à un attribut d'une variable non définie:
et il abandonnera probablement le script. Mais vous ne devriez pas compter dessus car ce n'est pas du tout standard, et cela semble vraiment être une pratique terrible.
ÉDITER : OK, ce n'était peut-être pas une si bonne réponse à la lumière d'Ólafur. Bien que la
die()
fonction à laquelle il a lié implémente fondamentalement mon deuxième paragraphe, c'est-à-dire qu'elle génère simplement une erreur.la source
jeter "";
Est une mauvaise utilisation du concept, mais probablement la seule option. Et, oui, vous devrez réinitialiser tous les écouteurs d'événements, comme le mentionne la réponse acceptée. Vous auriez également besoin d'un point d'entrée unique si j'ai raison.
En plus: vous voulez une page qui vous rapporte par e-mail dès qu'elle est lancée - vous pouvez utiliser par exemple Raven / Sentry pour cela. Mais cela signifie que vous vous produisez de faux positifs. Dans ce cas, vous devez également mettre à jour le gestionnaire par défaut pour filtrer ces événements ou définir ces événements sur ignorer sur le tableau de bord de Sentry.
window.stop ();
Cela ne fonctionne pas pendant le chargement de la page. Il arrête également le décodage de la page. Vous ne pouvez donc pas vraiment l'utiliser pour offrir à l'utilisateur une variante sans javascript de votre page.
débogueur;
Arrête l'exécution uniquement avec le débogueur ouvert. Fonctionne très bien, mais pas un livrable.
la source
En JavaScript, plusieurs façons sont disponibles, ci-dessous en sont quelques-unes
Méthode 1:
Méthode 2:
Méthode 3:
Méthode 4:
Méthode 5:
écrivez votre fonction personnalisée utilisez la méthode ci-dessus et appelez là où vous en avez besoin
Remarque: si vous souhaitez simplement suspendre l'exécution du code, vous pouvez utiliser
la source
Cette petite fonction est assez proche d'imiter la sortie de PHP (). Comme pour les autres solutions, n'ajoutez rien d'autre.
la source
Créez simplement une condition BOOL, pas besoin de code compliqué ici.
Si même une fois que vous le mettez à vrai / ou plusieurs fois, cela vous donnera à la fois une ligne de solution / non plusieurs - fondamentalement simple comme ça.
la source
Si vous utilisez une fonction non définie dans le script, le script s'arrêtera en raison de "Uncaught ReferenceError". J'ai essayé en suivant le code et les deux premières lignes exécutées.
Je pense que c'est la meilleure façon d'arrêter le script. S'il y a un autre moyen, veuillez me commenter. Je veux aussi connaître un autre moyen simple et meilleur. BTW, je n'ai pas eu de sortie ou de fonction intégrée en Javascript comme PHP pour terminer le script. Si quelqu'un sait, faites-le moi savoir.
la source
Si vous souhaitez simplement empêcher l'exécution de code supplémentaire sans "lancer" d'erreur, vous pouvez temporairement remplacer
window.onerror
comme indiqué danscross-exit
:la source
J'utilise iobroker et j'ai facilement réussi à arrêter le script avec
la source
Non applicable dans la plupart des cas, mais j'avais beaucoup de scripts asynchrones en cours d'exécution dans le navigateur et en tant que hack je le fais
pour tout arrêter.
la source
Je sais que c'est vieux, mais si vous voulez une
die()
fonction PHP similaire , vous pouvez faire:Usage:
L'exemple ci-dessus n'imprimera que "Hello".
la source
j'utilise ce morceau de code pour arrêter l'exécution:
vous obtiendrez cependant une erreur de console mais cela fonctionne bien pour moi.
la source
Voici un exemple qui, si une condition existe, met fin au script. J'utilise ceci dans mon javascript côté client SSE, si le
ne peut pas être analysé directement à partir de l'analyse JSON ...
... de toute façon l'idée générale est:
cela terminera / mourra votre script javasript
la source
J'utilise l'instruction return au lieu de throw car throw donne une erreur dans la console. la meilleure façon de le faire est de vérifier l'état
cela arrête simplement l'exécution du programme à partir de cette ligne, au lieu de donner des erreurs dans la console.
la source
if (condition) { new new }
ouif (condition) { purpleMonkeyDishwasher(); }
.