0
点赞
收藏
分享

微信扫一扫

[C1进阶之路-JS基础] 条件分支

陌岛 2022-05-05 阅读 30

条件分支


​🍑 任务目标


​🍑 任务背景


​🍑 任务内容


🍉 if分支

if (条件1) { 
    // 代码块1 
} else if (条件2) { 
    // 代码块2 
} else { 
    // 代码块3 
}

  • 如果条件1为真就会执行代码块1。即使条件2为真也不会去执行代码块2,更不会执行代码块3

  • 只有当条件1为假,并且条件2为真的时候,才会执行代码块2

  • 如果条件1和条件2都为假,才会执行代码块3

  • else if 和 else 部分不是必需的。

  • 可以有多个else if


var x = 20 
if (x > 5) { 
    console.log('a') 
} else if (x > 50) { 
    console.log('b') 
} else { 
    console.log('c') 
} 
// 如果x=20,上述代码预期输出:'a' 
// 如果x=100,上述代码预期输出也是:'a' 

​🍉 switch分支

switch (expression) { 
    case value1: 
        // 当 expression 的结果与 value1 匹配时,执行此处语句 	
        [break;] 
    case value2: 
        // 当 expression 的结果与 value2 匹配时,执行此处语句 	
        [break;] 
    ... 
    case valueN: 
        // 当 expression 的结果与 valueN 匹配时,执行此处语句 	
        [break;] 
    [default: 
        // 如果 expression 与上面的 value 值都不匹配,执行此处语句 
        [break;]] 
}
  • []表示这一部分语句是可选的,并不是说正常代码中要加[]

  • expression和value的是进行严格模式的匹配

  • 如果所有case都没有匹配到,将执行default分支的代码

var expr = '樱桃' 
switch (expr) { 
    case '樱桃': 
        // 代码块1
        console.log('樱桃每斤7元'); 
        break; 
    case '芒果': 
    case '木瓜': 
        // 代码块2
        console.log('芒果 和 木瓜 每斤10元'); 
        break; 
    default: 
        // 代码块3
        console.log('对不起,我们没有 ' + expr + '.'); 
} 
// 如果expr值为'樱桃',则预期输出:'樱桃每斤7元' 
// 当expr的值为'樱桃'时就会执行代码块1,且代码块1中有break,所有不会执行其他代码块 
// 注意:如果expr匹配到某一个case,且这个case里面代码没有break,那么执行完这个代码块后,紧接着就会执行下一个case的代码,不管expr有没有匹配到下一个case的值 
// 所以当expr的值为'芒果'的时候,代码块2也将被执行

​🍑 刷题练习

​💧 题目1

var a = 8 
if (a > 7) { 
    a = 3 
} 
if (a > 4) { 
    a = 5 
} 
console.log(a)

​💧 题目2

var expr = ____ 
switch (expr) { 
    case 1: 
        // 代码块1 
        console.log(111); 
    case 2: 
        // 代码块2 
        console.log(222); 
    case 3: 
        // 代码块3 
        console.log(333); 
        break;  
    case 5: 
        // 代码块5 
        console.log(111); 
    case 6: 
        // 代码块6 
        console.log(222); 
        break; 
    default: 
        // 代码块7 
        console.log(111); 
}
预期输出: 
111
222

​💧 题目3

var num = 89
if (num < 89) {
    console.log('a')
} else if (num > 89) {
    console.log('b')
} else {
    console.log('c')
}
预期输出: 
____

​💧 题目4

if (8 > 7) {
    console.log('Hello')
} else {
    console.log('World')
}
预期输出: 
____

​💧 题目5

以下JavaScript代码运行的预期输出结果是?

if (78 < 67) {
    if (45 > 23) {
        console.log('a')
    } else {
        console.log('b')
    }
} else {
    if (89 > 45) {
        console.log('c')
    } else {
        console.log('d')
    }
}
预期输出: 
____

需知:资料来源于C1认证

举报

相关推荐

0 条评论