温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

if-else代码结构的优化方法有哪些?

发布时间:2020-04-09 14:52:54 来源:亿速云 阅读:98 作者:小新 栏目:编程语言

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

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI