1

我觉得我在这里遗漏了一些非常基本的东西。为什么我附加的代码没有到达 else 语句?这似乎与 break 语句有关。这可能是我忽略的非常简单的事情。

HTML

<button onclick="yo();">Hit me</button>

JS

var line = "no";

function yo() {
    if (line == "yes") {
        break;   
    }
    else {
        window.alert("hi");
    }
}

http://jsfiddle.net/dsX65/

4

3 回答 3

3

因为你有语法错误

breakstatement 可以用在循环和switch语句中,不能用在if子句中。

休息

终止当前循环、开关或标签语句,并将程序控制转移到终止语句之后的语句。

(...来自MDN ...)

于 2013-04-19T19:57:33.743 回答
1

使用return代替,break这将解决它。

于 2013-04-19T19:58:31.483 回答
1

我认为您的意思是改用该return语句。

var line = "no";

function yo() {
    if (line == "yes") {
        return;   
    }
    else {
        window.alert("hi");
    }
}

不过,你可以做得更好:

var line = "no";

function yo() {
    if (line !== "yes") {
        window.alert("hi");
    }
}
于 2013-04-19T19:59:32.880 回答