Bien que je ne l'ai pas utilisé pour faire des tests provisoires, vous pouvez voir d'ici qu'il embellit js. Certaines personnes peuvent penser que l'instruction if est aussi simple que cela, dans quelle mesure peut-elle être optimisée ? Mais jetez un œil aux méthodes suivantes et vous pourriez changer d’avis.
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.
2. Utilisez les opérateurs and(&&) et or(||)
if (foo) bar(); ==> foo&&bar(); if (!foo) bar(); ==> foo||bar();
Pour être honnête, je n'ai jamais écrit de code comme celui-ci, j'apprends cette façon d'écrire. "Bird", je l'ai vu en lisant Brother's Linux Private Kitchen, mais je n'ai pas pensé à l'implémenter en js.
3. Omettez les accolades {}
if (foo) return bar(); else something(); ==> {if(foo)return bar();something()}
Vous et moi connaissons tous les deux cette méthode d'écriture, mais je recommande de le faire lors de l'optimisation du code, ou de laisser UglifyJS vous aider à 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 comme ceci, 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 notre diligence à trouver une meilleure façon.
Pour plus d'articles sur plusieurs méthodes d'écriture de code d'optimisation des instructions if en js, veuillez faire attention au site Web PHP chinois !