Dar*_*rcy 2 javascript for-loop return
也许这是一个愚蠢的问题,但有没有办法回到循环的顶部?
例:
for(var i = 0; i < 5; i++) {
if(i == 3)
return;
alert(i);
}
Run Code Online (Sandbox Code Playgroud)
您在其他语言中的期望是警报会触发4次:
警报(0); 警报(1); 警报(2); 警报(4);
但相反,当我是3时,该功能立即退出.
use*_*716 17
用continue
而不是return
.
示例: http ://jsfiddle.net/TYLgJ/
for(var i = 0; i < 5; i++) {
if(i == 3)
continue;
alert(i);
}
Run Code Online (Sandbox Code Playgroud)
如果你想在那一点完全停止循环,你可以使用break
而不是return
.该return
语句用于从正在执行的函数返回值.
编辑:@epascarello提供的文档链接以下评论.
continue
:https://developer.mozilla.org/en/JavaScript/Reference/Statements/continuereturn
:https://developer.mozilla.org/en/JavaScript/Reference/Statements/return对于它的价值,你也可以标记它们:
OUTER_LOOP: for (var o = 0; o < 3; o++) {
INNER_LOOP: for (var i = 0; i < 3; i++) {
if (o && i) {
continue OUTER_LOOP;
}
console.info(o, ':', i);
}
}
Run Code Online (Sandbox Code Playgroud)
输出:
0 : 0
0 : 1
0 : 2
1 : 0
2 : 0
Run Code Online (Sandbox Code Playgroud)