Quelle est la convention JavaScript pour aucune opération? Comme une pass
commande Python .
- Une option est simplement une fonction vide:
function() {}
- jQuery propose
$.noop()
, qui appelle simplement la fonction vide ci-dessus. - Est-il acceptable d'entrer simplement une valeur de
false
ou0
?
Dans le contexte ... tout cela fonctionne sans générer d'erreur dans Chrome:
var a = 2;
(a === 1) ? alert(1) : function() {};
(a === 1) ? alert(1) : $.noop();
(a === 1) ? alert(1) : false;
(a === 1) ? alert(1) : 0;
EDIT: Beaucoup de gens ont répondu: "Ne faites pas ça! Changez la structure du code!" Cela me rappelle un article où quelqu'un a demandé comment renifler le navigateur. Il a reçu une avalanche de messages disant: "NE FAITES PAS CELA! C'EST MAUVAIS", mais personne ne lui a dit comment renifler le navigateur . Ce n'est pas une révision de code. Imaginez que vous avez affaire à du code hérité qui ne peut pas être modifié, et sans une fonction transmise, il lancera une erreur. Ou, tout simplement, c'est ainsi que le client le souhaite et il me paie . Donc, respectueusement, veuillez répondre à la question : Quelle est la meilleure façon de spécifier une fonction «sans opération» en JavaScript?
EDIT2: Que diriez-vous de l'un d'entre eux?
true;
false;
0;
1;
null;
0
n'est effectivement meilleure (ou pire). Je dirais que la bonne chose à faire est de if (a === 1) doSomething();
ne pas utiliser ? :
lorsque cela n'a pas de sens.
if (statement) action; else ;
false
ou 0
fonctionnera; null
est une belle façon d'exprimer le no-op.