首页 > 解决方案 > 在 Switch javascript 中返回

问题描述

return大家好,我是编程新手,在练习 freecodecamp 时很难弄清楚。这是一个使用returninswitch语句的案例。

例子

function sequentialSizes(val) {
    var answer = ""; 
    // Only change > code below this line 
    switch (val) { 
        case 1:
        case 2:
        case 3:
            return "Low";
            break;
        case 4:
        case 5:
        case 6:
            return "Mid"
            break;
        case 7:
        case 8:
        case 9:
            return "High";
            break;
    } 
    // Only change code above this line 
    return answer; 
}
// Change this value to test 
sequentialSizes(1);

我不明白的是,switch对于不同的情况,该语句返回的是低中值和高值,而函数正在返回其值未在前面定义的答案。但是代码有效,如何?逻辑是什么?是因为当我们返回答案时,它采用了switch语句返回的值吗?

标签: javascriptswitch-statementreturn

解决方案


不使用变量 answer。案例中的 return 语句指定了函数在不同条件下将返回的内容。switch/case 语句的工作方式是它接受一个变量,在本例中为 val,并评估该值。它找到匹配的大小写,如果有,则使用默认值。一旦到达案例,它就会开始执行代码。例如,如果 val=5,则触发案例 5。代码开始执行,直到遇到一个 break 语句,此时它从 switch case 中退出。如果情况 5 被触发,我们返回“Mid”然后中断。这个场景中的 break 实际上并没有被执行,因为我们一点击 return 语句就从函数中返回。


推荐阅读