本帖最后由 群发软件 于 2017-6-1 00:06 编辑 
今天在研究某系统时发现其代码有这样一个结构(已简化): 
[url=]复制代码[/url]代码如下:
var result = false; 
point: 
{ 
var obj = { key: 1 }; 
for (var key in obj) { 
// ... 
break point; 
} 
result = true; 
} 
alert(result); 
咋看一下以为是代码错误,甚至于Visual Studio对此代码没办法进行正确的格式化。可是又仔细一看语意还是很清晰的,也就是从for循环内部break到指定的point这个位置,而且此系统不应该犯这样的错误的。因为自己没有这样使用过,遂进行了一番测试,测试结果果然是自己学术不精啊。。。这是javascript既有的语法,break是可带位置标签的,查阅相关文档发现continue一样也是可以带位置标签的。 
他们的的语法分别为: 
break [label]; 
continue [label]; 
我们知道在循环体当中break只能跳出当前循环,而当break带上了标签,就能随意跳到某位置,可轻松的跳出多重循环,此外switch中的break也是一样可以这样使用。 
 JavaScript break 和 continue 语句
  有两种特殊的语句可用在循环内部:break 和 continue。
  Break
  break命令可以终止循环的运行,然后继续执行循环之后的代码(如果循环之后有代码的话)。
  实例:
<html>   
<body>   
<script type="text/javascript">   
var i=0   
for (i=0;i<=10;i++)   
{   
if (i==3){break}   
document.write("The number is " + i)   
document.write("<br />")   
}   
</script>   
</body>   
</html>  | 
  结果:
  The number is 0
  The number is 1
  The number is 2
      Continue
  continue命令会终止当前的循环,然后从下一个值继续运行。
  实例:
 
<html>   
<body>   
<script type="text/javascript">   
var i=0   
for (i=0;i<=10;i++)   
{   
if (i==3){continue}   
document.write("The number is " + i)   
document.write("<br />")   
}   
</script>   
</body>   
</html> | 
  结果:
  The number is 0
  The number is 1
  The number is 2
  The number is 4
  The number is 5
  The number is 6
  The number is 7
  The number is 8
  The number is 9
  The number is 10
JavaScript break 结束循环JavaScript break 命令表示结束当前循环,然后继续执行循环之后的代码。break 一般配合 if 条件语句一起使用,如下例子:
<script type="text/javascript">var i=1for (i = 1; i<=10; i++) {    if (i > 5) {        break;    }    document.write(i + "<br />");}</script>
运行结果:
12345
JavaScript continue 跳过当前循环与 break 命令不同的是,JavaScript continue 跳过当前的循环(相当于本次循环无效)而继续下次循环,直到循环结束。
下面的例子演示了输出 1-10 之间的奇数:
<script type="text/javascript">var i=1for (i = 1; i<=10; i++) {    if ( i % 2 == 0 ){        continue;    }    document.write(i + "<br />");}</script>
运行结果:
13579
提示如上例所示,不管是 break 结束循环还是 continue 跳过当前循环,需要注意执行 break/continue 命令的位置。上面输出奇数的例子,如果将 continue 命令放在 document.write 命令之后,则无法达到我们输出奇数的结果。