if-else代码结构的优化方法有哪些?不少人在学习编程的时候都会遇到这样的疑惑,为了解决大家的这个学习障碍,所以小编给大家总结了以下内容,一起往下看吧。

1、案例示范:

(1)需求

首先我们的需求是写一个 returnWeekday() 方法返回"今天是星期*"。

(2)代码如下:

function returnWeekday(){

let string = "今天是星期";

let date = new Date().getDay();

if (date === 0) {

string += "日";

} else if (date === 1) {

string += "一";

} else if (date === 2) {

string += "二";

} else if (date === 3) {

string += "三";

} else if (date === 4) {

string += "四";

} else if (date === 5) {

string += "五";

} else if (date === 6) {

string += "六";

}

return string

}

console.log(returnWeekday())

(3)优化思路:

当我们写完了这样的代码,第一感觉应该是elseif块太多了。众所周知,switch 语句与 if 语句的关系最为密切,而且也是在其他语言中普遍使用的一种流控制语句。因此我们应该考虑使用 switch 语句来进行优化。

(4)初级优化代码如下:

function returnWeekday(){

let string = "今天是星期";

let date = new Date().getDay();

switch (date) {

case 0 :

string += "日";

break;

case 1 :

string += "一";

break;

case 2 :

string += "二";

break;

case 3 :

string += "三";

break;

case 4 :

string += "四";

break;

case 5 :

string += "五";

break;

case 6 :

string += "六";

break;

}

return string

}

console.log(returnWeekday())

(5)再次优化代码如下:

在 case 里面拼接字符,以达到输出预期结果的目的。这里的结构看起来确实比 if 语句清晰了一点。可是我们的目标应该是希望是已经封装好的方法,不要频繁的修改。因此再次进行优化:

(){

let string = "今天是星期";

let date = new Date().getDay();

// 使用对象

dateObj = {

0: 天 ,

1: "一",

2: "二",

3: "三",

4: "四",

5: "五",

6: "六",

};

return string + dateObj[date]

}

console.log(returnWeekday())

关于if-else代码结构的优化方法有哪些就分享到这里了,当然并不止以上和大家分析的办法,不过小编可以保证其准确性是绝对没问题的。希望以上内容可以对大家有一定的参考价值,可以学以致用。如果喜欢本篇文章,不妨把它分享出去让更多的人看到。