暫定的なテストには使用していませんが、ここから、js を美しくすることができることがわかります。 「if文なんて簡単だけど、どこまで最適化できるの?」と思う人もいるかもしれません。しかし、次の方法を検討してみると、考えが変わるかもしれません。
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 ステートメントを最適化するために上記の三項演算子を使用することはよく知られているので、おそらく頻繁に使用するでしょう。
2. and(&&) と or(||) 演算子を使用する
if (foo) bar(); ==> foo&&bar(); if (!foo) bar(); ==> foo||bar();
正直、このようなコードの書き方は「Niao 兄弟の Linux プライベートクッキング」を勉強していたときに見たことがあります。 jsで実装するという発想はありませんでした。
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 ステートメントを使用する必要がある可能性があります。上記のコードは、簡潔で効果的であるだけでなく、非常に読みやすいものでもあります。
よく考えてみれば、問題を解決するための効果的な方法が見つかることも多いですが、より良い方法を見つけるために心を使うかどうかが鍵となります。
js の if ステートメントのいくつかの最適化されたコード記述方法に関するその他の関連記事については、PHP 中国語 Web サイトに注目してください。