1. Utilisez des opérateurs ternaires courants
if (foo) bar(); else baz(); ==> foo?bar():baz(); if (!foo) bar(); else baz(); ==> foo?baz():bar(); if (foo) return bar(); else return baz(); ==> return foo?bar():baz();
Vous serez certainement familier avec l'utilisation ci-dessus des opérateurs ternaires pour optimiser les instructions if, peut-être que vous l'utilisez souvent.
<script> var i=9 var ii=(i>8)?100:9; alert(ii); </script>
Résultat de sortie :
100
2. Utilisez les opérateurs et(&&) et ou(||)
if (foo) bar(); ==> foo&&bar(); if (!foo) bar(); ==> foo||bar();
3. Omettez les accolades {}
if (foo) return bar(); else something(); ==> {if(foo)return bar();something()}
Vous et moi connaissons cette méthode d'écriture Il est recommandé de le faire lors de l'optimisation du code, ou. laissez-le à l'aide d'UglifyJS. Vous allez le résoudre. Après tout, s’il manque une accolade, la lisibilité du code n’est pas élevée.
En écrivant ceci, j'ai pensé à une méthode pour obtenir les attributs des éléments HTML dans "Mastering JavaScript" du père de jQuery.
function getAttr(el, attrName){ var attr = {'for':'htmlFor', 'class':'className'}[attrName] || attrName; };
Si nous ne l'écrivons pas de cette façon, nous devrons peut-être utiliser deux instructions if pour le traiter. Le code ci-dessus est non seulement concis et efficace, mais également très lisible.
Si vous y réfléchissez bien, nous pouvons souvent trouver des moyens efficaces de résoudre les problèmes, mais la clé réside dans la question de savoir si nous utilisons notre cœur pour trouver une meilleure façon.
[compétences javascript] if(x==null) abréviation
if (x==null) ou if (typeof (x) == 'indéfini') Il peut être abrégé comme if(!x), ce qui n'est pas vérifié.
Au contraire, si(x) signifie que x n'est pas vide
Juger si l'objet existe
if(document.form1.softurl9){ //判断是否存在softurl9,防止js出错 }
if(document.getElementById("softurl9")){ //判断是否存在softurl9,防止js出错 }
Supplémentaire :
javascript || && abréviation if
<script type="text/javascript"> 如果你想写 if (!false) { alert('false'); } 不妨考虑写成: false || alert('false'); false || alert('false'); true || alert('true'); //output false; 用"||"的情况下,第一个条件true,不检测第二个直接返回true.第一个条件false,会执行第二个条件检测 false && alert('false'); true && alert('true'); //output true 用"&&"的情况下,第一个条件true,还会检测第二个条件。第一个条件false,直接返回false退出。 简而言之, 替换 if 的简单实用, ? : 替换 if else的实用。 写短小精悍的代码 usage: $("#regform input[type!=hidden]").each( function(index) { $(this).parent().has("p.valid-under").length || $('<p class="valid-under"></p>').appendTo($(this).parent()); } ); </script>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!