在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
不少人在学习编程的时候都会遇到这样的疑惑:如何优化if-else代码结构?为了解决大家的这个学习障碍,本文以<输出今天为星期几> 来聊聊优化if-else代码结构的具体步骤。虽然每个项目都有不同的复杂情况,但是优化思路和逻辑都是一样,大家掌握了本文优化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代码结构的一个具体步骤和思考路线,虽然案例很简单,但是这类代码结构优化都是相通的,大家可以把这个案例到看几遍,真正掌握其中的优化精髓。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
电脑编程入门自学规划 电脑编程如何学习
电脑编程入门自学规划,想要学好计算编程首先我们要打好编程基础、学编程语法、基本编程思维练习、类库学习、专业编程知识等内容。学习电脑编程的原因是由浅入深、分步骤,循序渐进、注重实践。想要学好编程就要理论学习、实践操作、不断的借鉴学习相结构。
10315
2019-07-29 17:22:53
自学什么好找工作?学计算机怎么样?
自学什么好找工作?学计算机怎么样?首先小编认为自学需要结合自身的兴趣爱好和行业选择一个适合自己发展的行业,学什么可以听听别人的意见,目前互联网发展比较快,对于计算机方面的人才需求也比较大,但是并不缺初级程序员,如果学计算机就要做很大的决心。
4959
2019-08-13 11:37:30
3G软件工程师培训学什么?学多久可以就业?
3G软件工程师作为目前的黄金岗位,无论是从职位的招聘需求还是薪资待遇考虑,其就业前景都是无可限量的。也正因如此,不少人都关注起了3G软件工程师培训。那么,3G软件工程师培训学什么?学多久可以就业?简单来讲,编程语言和通信相关知识都是需要学习的重点,下面我们具体看一下培训的内容。至于学习的时间要根据学习者自身的能力水平和努力程度决定。
5864
2020-02-03 17:01:13
新手入门编程需要具备哪些素质?
在新手入门编程之前,作为过来人小编想给大家一些关于学习编程的建议。很多零基础非计算机科班出身的初学者担心自己学不好编程,其实这种担心完全是多余的,学习编程就和学习一门外语是一样的,即使现在你还是零,在经过了一段时间的努力学习之后,也能成功掌握编程语言。那么有人可能要问了,新手入门编程需要具备哪些素质呢?或者换句话说,在学习编程的过程中哪些素质会帮助我们更好更快的掌握一门编程语言呢?
4082
2020-04-22 17:16:50
什么样的IT程序员更受欢迎
提到程序员,很多人会觉得特别高大上,而不少程序员则以码农自嘲。虽然程序员比较“吃香”,但是现在计算机专业的毕业生和非计算机专业出身的程序员已经很多了,就业市场竞争还是很激烈的。想要在这个行业里立稳脚跟甚至脱颖而出,需要一些特质。
3737
2020-05-08 09:58:19