Javascript“break”总是命中

时间:2013-04-19 19:56:14

标签: javascript if-statement conditional break

我觉得我在这里遗漏了一些非常基本的东西。为什么我的附加代码没有进入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/

3 个答案:

答案 0 :(得分:3)

因为您有语法错误

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

  

<强>断裂

     

终止当前循环,切换或标签语句和传输   程序控制到终止语句后的语句。

(......来自MDN ...)

答案 1 :(得分:1)

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

答案 2 :(得分: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");
    }
}