最近在写代码的时候,用了不少if else,当然不影响功能,但是后期维护感觉更加麻烦了,有点难理解,就像是回调地狱一样,看了让人害怕,随着逻辑复杂度的增加,代码中的if/else/switch会变得越来越臃肿,这我也记录下,简单优化下臃肿的代码,起码看起来整洁一些。
一:switch case
我相信这也是大家平时常用优化if else的一种方法,写法看起来比较易懂,性能并没有提高。
举例:
if (number === 0) {
} else if (number === 1) {
string = "一";
} else if (number === 2) {
string = "二";
} else if (number === 3) {
string = "三";
} else if (number === 4) {
string = "四";
} else if (number === 5) {
string = "五";
} else if (number === 6) {
string = "六";
}
switch (number) {
case 1 :
string += "一";
break;
case 2 :
string = "二";
break;
case 3 :
string = "三";
break;
case 4 :
string = "四";
break;
case 5 :
string = "五";
break;
case 6 :
string = "六";
break;
}
二:hash 表
存到对象里面,直接取出
if (key == "Apple") {
val = "Jobs";
} else if (key == "microsoft"){
val = "Gates";
} else if (key == "Google"){
val = "Larry";
}
var ceos = {"Apple":"Jobs", "microsoft":"Gates", "Google":"Larry"};
val = ceos[key];
其他方法
(1)三元运算
适合简单的 if(){}else{}
情况。
(2)逻辑与运算符
有些时候我们可以使用逻辑与运算符来简化代码(&&和||)
(3)includes
处理多重条件
if( code === '202' || code === '203' || code === '204' ){
someMethod()
}
//改成
if( ['202','203','204'].includes(code) ){
someMethod()
}