美文网首页前端小白踩坑系列
关于 Switch 与 If 判断

关于 Switch 与 If 判断

作者: 你压我退毛了 | 来源:发表于2018-05-10 14:54 被阅读0次

Switch 与 If 需根据情况

  • 大部分书写代码的时候,当需要做判断的时候,很多人(包括我),都喜欢使用 if 语句,因为 if 的逻辑性很高,而且可以在判断的时候增加很多复杂的条件。
var bug_bum_if = function () {
    if (see watermelon || see apple || see peach) {
        bug two;
    }  
}
// 这种复杂的买包子事件就很容易实现。
// 但是如果是用 switch 来实现呢 就很奇怪。
var bug_bum_switch = function (whatYouSee) {
    switch (whatYouSee) {
        case 'see watermelon' :
            bug two;
            break;
        case 'see apple' :
            bug two;
            break;
        case 'see peach' :
            bug two;
            break;
    }
}
// 这个时候使用switch就显得很蠢,明明几行就搞定的事情,非要写那么多行。但是不可否认的确实可读性更高一些(个人认为)
  • 但是当判断条件简单了,但是需要购买的内容变多了的时候呢, Swtich 结构 可能会胜出吧。
// 当然 我们还是买包子
var bug_bum_if = function () {
    if (see watermelon) {
        bug two;
    }  else if (see apple) {
        bug three;
    } else if (see peach) {
        bug four;
    }
}
// 无尽的花括号~
var bug_bum_switch = function (whatYouSee) {
    switch (whatYouSee) {
        case 'see watermelon' :
            bug two;
            break;
        case 'see apple' :
            bug three;
            break;
        case 'see peach' :
            bug four;
            break;
    }
// Switch 难得的没有什么变化,但是买的数量确实改变了,这次是不是可读性更高了呢。
  • 所以当判断条件很复杂的时候,比如有很多与或非的运算,使用 If 语句无疑可以提高很多效率,但是当判断条件很简单的时候,不妨使用 Swtich。

Switch 的简写

// 其实这才是这次主要想记录的东西
var text_switch = function (value) {
    switch (value) {
        case 'A' :
            console.log('First');
            break;
        case 'a' :
            console.log('First');
            break;
        case 'B' :
            console.log('Second');
            break;
        case 'b' :
            console.log('Second');
            break;
        case 'C' :
            console.log('Third');
            break;
        case 'c' :
            console.log('Third');
            break;
    }
}
// 当我们需要执行的代码块一致时候,可以简写成:
var text_switch_simple = function (value) {
    switch (value) {
        case 'A' :
        case 'a' :
            console.log('First');
            break;
        case 'B' :
        case 'b' :
            console.log('Second');
            break;
        case 'C' :
        case 'c' :
            console.log('Third');
            break;
    }
}
// textSwitch('A') -> First
// textSwitch('a') -> First
// textSwitch('B') -> Second
// textSwitch('b') -> Second
// textSwitch('C') -> Third
// textSwitch('c') -> Third
// 看起来简单多了不是吗,当然这是一个大牛告诉我的,并且测试过没有问题,如果出现了什么问题

结束啦

相关文章

  • 关于 Switch 与 If 判断

    Switch 与 If 需根据情况 大部分书写代码的时候,当需要做判断的时候,很多人(包括我),都喜欢使用 if ...

  • 学习笔记4

    关于条件语句switch case switch case 结构switch(判断){case 数值:语句bre...

  • scala 模式匹配

    scala的模式匹配与java的switch case相似,但是switch case只能对值进行判断,scala...

  • 流程控制语句

    if判断if(){ }else{ } switch判断 条件要全等才行switch(){case value1:...

  • switch范围判断、switch区间判断

    大家都知道switch 语句中的 expression 必须是一个整型或枚举类型,或者是一个 class 类型,其...

  • PowerBI DAX switch true

    switch true判断最近6个月与6个月前的数据

  • 第二篇-流程控制与数组

    1.switch条件判断类型: byte,short ,int,char,String,枚举 2.while 与 ...

  • js 总结四 07-12

    switch typeof判断类型 类型转换

  • JAVA switch case 语句

    switch case 语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。 规则:switch 语句...

  • Java switch case 语句

    switch case 语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。 语法 switch 语句...

网友评论

    本文标题:关于 Switch 与 If 判断

    本文链接:https://www.haomeiwen.com/subject/wqizrftx.html