1. 一般的な三項演算子を使用する
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();
if ステートメントを最適化するための上記の三項演算子の使用法はよく知られているので、よく使用するかもしれません。
<script> var i=9 var ii=(i>8)?100:9; alert(ii); </script>
出力結果:
100
2. and(&&) と or(||) 演算子を使用します
if (foo) bar(); ==> foo&&bar(); if (!foo) bar(); ==> foo||bar();
3. 中括弧 {} を省略します
if (foo) return bar(); else something(); ==> {if(foo)return bar();something()}
この書き方は非常に面倒ですあなたと私へ これに精通している場合は、コードを最適化するときにこれを行うか、UglifyJS に問題の解決を手伝ってもらうことをお勧めします。結局のところ、中括弧が 1 つ欠けていると、コードの可読性は高くありません。
これを書いていて、jQueryの父の『使いこなすJavaScript』にあるHTML要素の属性を取得する方法を思いつきました。
function getAttr(el, attrName){ var attr = {'for':'htmlFor', 'class':'className'}[attrName] || attrName; };
このように書かないと、処理するために 2 つの if ステートメントを使用する必要がある可能性があります。上記のコードは、簡潔で効果的であるだけでなく、非常に読みやすいものでもあります。
よく考えてみれば、問題を解決するための効果的な方法が見つかることも多いですが、より良い方法を見つけるために心を使うかどうかが鍵となります。
【JavaScriptスキル】if(x==null)の略語
if(x==null) または if (typeof (x) == 'unknown') は if(!x) と略すことができます、検証されていません。
逆に、if(x)はxが空ではないことを意味します
オブジェクトが存在するかどうかを判断します
if(document.form1.softurl9){ //判断是否存在softurl9,防止js出错 }
if(document.getElementById("softurl9")){ //判断是否存在softurl9,防止js出错 }
補足:
javascript || &&の略語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>
以上がJavaScriptの演算子、演算子、{}の使い方を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。