Obwohl ich es nicht für einige vorläufige Tests verwendet habe, können Sie hier sehen, dass es JS verschönert. Manche Leute denken vielleicht, dass die if-Anweisung so einfach ist. Inwieweit kann sie optimiert werden? Aber werfen Sie einen Blick auf die folgenden Möglichkeiten und vielleicht ändern Sie Ihre Meinung.
1. Verwenden Sie gängige ternäre Operatoren
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();
Sie werden sicherlich mit der oben genannten Verwendung ternärer Operatoren zur Optimierung von if-Anweisungen vertraut sein, vielleicht verwenden Sie sie oft.
2. Verwenden Sie die Operatoren and(&&) und or(||)
if (foo) bar(); ==> foo&&bar(); if (!foo) bar(); ==> foo||bar();
Um ehrlich zu sein, habe ich noch nie Code wie diesen geschrieben, in dem ich lerne „Bird“ Ich habe es gesehen, als ich Brother’s Linux Private Kitchen gelesen habe, aber ich habe nicht daran gedacht, es in js zu implementieren.
3. Lassen Sie die geschweiften Klammern weg {}
if (foo) return bar(); else something(); ==> {if(foo)return bar();something()}
Sie und ich sind beide mit dieser Schreibmethode vertraut, aber ich empfehle, dies zu tun, wenn Sie den Code optimieren, oder sich von UglifyJS bei der Lösung helfen zu lassen . . Denn wenn eine geschweifte Klammer fehlt, ist die Lesbarkeit des Codes nicht gut.
Als ich dies schrieb, dachte ich an eine Methode zum Erhalten von HTML-Elementattributen in „Mastering JavaScript“ vom Vater von jQuery.
function getAttr(el, attrName){ var attr = {'for':'htmlFor', 'class':'className'}[attrName] || attrName; };
Wenn wir es nicht so schreiben, müssen wir möglicherweise zwei if-Anweisungen verwenden, um es zu verarbeiten. Der obige Code ist nicht nur prägnant und effektiv, sondern auch gut lesbar.
Wenn Sie sorgfältig darüber nachdenken, können wir oft effektive Wege finden, um Probleme zu lösen, aber der Schlüssel liegt darin, ob wir fleißig nach einem besseren Weg suchen.
Weitere verwandte Artikel zu verschiedenen Optimierungscode-Schreibmethoden für if-Anweisungen in js finden Sie auf der chinesischen PHP-Website!