Javascript 如何使用goto
在Javascript中没有goto关键字。原因是它提供了以任意和非结构化方式进行分支的方法。这可能会使goto语句难以理解和维护。但是仍然有其他方法可以获得所需的结果。在JavaScript中获得goto结果的方法是使用 break 和 continue 。
除了在switch语句中使用之外,break语句还可以用于提供一种“文明”的goto形式。通过使用这种形式的break,您可以跳出一个或多个代码块。这些代码块不一定是循环或switch的一部分,可以是任何代码块。您还可以精确指定执行将在哪里恢复,因为这种形式的break与标签一起使用。因此,总结是使用 break 和 continue 可使您享受goto的好处而无需面对其缺点。
标记语句的一般语法如下:
break label;
类似的操作也可以用于continue。 在这里,标签可以是代码块的名称,可以是任何变量名,但不能是javascript关键字。
转换示例:
var number = 0;
Start_Position
document.write("Anything you want to print");
number++;
if (number & lt; 100) goto start_position;
注意: 这不是一段代码,只是一个你想使用goto语句的示例。
现在,我们将使用JavaScript实现如下:
var number = 0;
start_position: while (true) {
document.write("Anything you want to print");
number++;
if (number & lt; 100) continue start_position;
break;
}
Continue和break都可以与一个标签一起使用,将控制转移到程序的其他部分。它可以在循环中使用,将控制权传递给其他部分,在检查某些条件后起作用,并且可以应用于更多的逻辑语句。现在,如果我们想在某个条件下退出循环,我们可以使用break关键字。
接下来的示例中,为某个条件添加一个break。
var i;
for (i = 1; i & lt; = 10; i++) {
document.write(i);
if (i === 9) {
break;
}
}
document.write( & quot; < br > Learnt something new ");
输出:
123456789
这里我们只是使用了break关键字来结束循环。
现在再次以前面的示例为基础添加一个continue语句。
var i;
for(i=1;i<=10;i++){
if (i===4 || i===2) {
continue;
}
document.write(i);
if(i===6){
break;
}
}
document.write("
Learnt something new");
输出:
1356
因此,在JavaScript中,使用break或continue可以实现相同的效果,并且都用于替代goto。
示例:
<h2>JavaScript break</h2>
<p id="demo"></p>
<script>
var cars = [
"BMW", "Volvo", "Maruti", "Honda"];
var text = "";
list: {
text += cars[0] + "<br>";
text += cars[1] + "<br>";
break list;
text += cars[2] + "<br>";
text += cars[3] + "<br>";
}
document.getElementById(
"demo").innerHTML = text;
</script>
输出 :
BMW
Volvo
下面是另一个关于Continue的程序。
<h2>JavaScript Loops</h2>
<p>A loop with a <b>continue</b> statement.</p>
<p>A loop which will skip the step where i = 3.</p>
<p id="demo"></p>
<script>
var text = "";
var i;
for (i = 0; i < 10; i++) {
if (i === 3) {
continue;
}
text += "The number is " + i + "<br>";
}
document.getElementById("demo").innerHTML = text;
</script>
输出:

极客教程