从 switch 语句中返回 false

3

我有一个JavaScript的switch语句,其中有多个case。但在其中一个case中,如果条件为false,我不希望继续执行。

我该如何做呢?

以以下代码为例:

switch (case) {
    case "1":
        // some code
        break;
    case "two":
        // some code
        break;
    case "III":
        if (!shouldProceed) {
          return false;
        }
        // tasks to be done for case III
        break;
    case "4": 
        // case 4 code
        break;
    default:
        // default tasks
        break;
    }

我的任务3是一个switch case,但它是有条件的。对于上述情况,从case语句中返回false是否安全?有什么更好的解决方法吗?


可以使用 return false,这是安全的。 - Denys Séguret
这样做没有问题。 - Tanner
只要在 switch 语句之后没有需要执行的代码,那就没问题了。 - Anthony Grist
1个回答

4

如果这个switch语句包含在一个函数中是安全的。只要记住它也会立即停止函数并返回false

var foo = function (bar) {
    switch (bar) {
        case 1:
            return false;
        case 2:
            bar++;
            break;
        default:
            return true;
    }
    return bar;
};

console.log(foo(1));    // false
console.log(foo(2));    // 3
console.log(foo(3));    // true

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接