Dans l'échantillon de code JavaScript suivant: Que sont des avantages et des inconvénients de la défaillance de l'action au début ou à la fin de la fonction? - supposer que le cas de vouloir inconditionnellement de l'empêcher à la fin. Y a-t-il des raisons techniques de choisir une façon? P> Surfer sur Internet, je n'ai trouvé que Une référence -Dead blog, désolé pour Google Le lien de cache - et les points qui empêchant l'action par défaut au début éviteront l'action qui se produit au cas où la fonction JS se bloque. P>
3 Réponses :
Je mets mon code empêchant le début de la raison pour laquelle vous avez déclaré. S'il y a une erreur plus tôt dans le JS plus tôt dans la fonction, l'action par défaut aura déjà été évitée. Cela peut être le comportement souhaité en production, mais peut également aider à déboguer votre code de développement, en considérant: Si une erreur devait se produire, la page pourrait rafraîchir ou suivre le Href de l'ancre avant Vous pouvez lire les informations de débogage. La commutation de l'action en haut s'assurera que vous puissiez lire la sortie dans la console. P> Modifier Strong> Comme Axel souligne dans les commentaires, un autre avantage est que vous grocez immédiatement que le code remplace l'action par défaut et ne le complète pas. p> p>
C'est un bon point, dans d'autre part, j'ai pensé que la prévention de l'événement au démarrage peut ajouter une expressivité à la fonction, car une vue simple vous dit que vous ne voulez pas l'action par défaut et que vous ferez certains Stuff, l'autre façon, vous devez aller à la fin pour savoir que le fait important de la manipulation des événements ...
@Axel un autre grand point. Je vais mettre à jour la réponse pour refléter cela.
JSBIN.COM/1/EDIT Voici un exemple peu stupide, mais encore un autre plus Pour prévenir la valeur par défaut au sommet
Oh, je ne pense pas que ce soit stupide, c'est très important. L'évacuation par défaut en haut de la fonction permet de déplacer / d'ajouter / supprimer des affirmations de retour sans casser le flux de code, très utile! Merci @ dmi3y. Plus d'achèvement de la réponse.
@ dmi3y, s'il vous plaît ajouter à votre réponse la chose que vous avez souligné pour la marquer enfin comme parfaite réponse
Vous n'avez aucune différence, la file d'attente de messages est piégée dans votre fonction. P>
L'appel final où mettre mais doit admettre qu'il pourrait se produire que vous avez conserver Action par défaut Selon quelque chose, comme mon point que c'est une situation rare, mais que vous ne pouvez pas empêcher la défaillance de la valeur par défaut en bas et utilisez le retour avec certains si la condition IF. P> P> preventDefault () code> est totalement sur le choix du développeur. Bien que, comme il est déjà signalé dans la plupart des cas, le meilleur choix est de mieux le placer au sommet du code pour éviter un comportement imprévisible comme celui-ci:
J'utilise généralement Retour False à la fin et empêche la valeur par défaut au début, ne sez même pas pourquoi. signifiait de toute façon
bw bon sujet ici ici Stackoverflow.com/questions/1357118/...
@ Dmi3y j'ai déjà connu l'article, mais bon point;)