代码优化
-
把简单的处理分支提前,处理完就直接 return 掉,这样的好处是,不用在冗长的条件代码处理之后,回忆另一个分支的处理,阅读也不清晰
-
分支中的处理要清晰,尽量抽离函数
-
短路求值是说, 只有当第一个运算数的值无法确定逻辑运算的结果时,才对第二个运算数进行求值:当AND(&&)的第一个运算数的值为false时,其结果必定为false;当OR(||)的第一个运算数为true时,最后结果必定为true。
逻辑或可以用来给参数设置默认值:function theSameOldFoo(name){ name = name || 'Bar' ; console.log("My best friend's name is " + name); } theSameOldFoo(); // My best friend's name is Bar theSameOldFoo('Bhaskar'); // My best friend's name is Bhaskar
逻辑与可以用来避免调用undefined参数的属性时报错:
var dog = {
bark: function(){
console.log('Woof Woof');
}
};
// 调用 dog.bark();
dog.bark(); // Woof Woof.
// 但是当dog未定义时,dog.bark() 将会抛出"Cannot read property 'bark' of undefined." 错误
// 防止这种情况,我们可以使用 &&.
dog&&dog.bark(); // This will only call dog.bark(), if dog is defined.
- 函数尽量保持 pure,职责单一,尽量不相互依赖
- 函数名和变量名表意清晰
春天的雨,夏天的风,只为更好的自己和最爱的你!