關于 JavaScript 標簽與 break 和 continue 一起使用的理解。
break 的作用是跳出代碼塊, 所以 break 可以使用與循環(huán)和 switch 等
continue 的作用是進入下一個迭代, 所以 continue 只能用于循環(huán)的代碼塊喧兄。
代碼塊: 基本上是{}大括號之間
然后:
1. 默認標簽的情況(除了默認標簽情況无畔,其他時候必須要有名標簽,否則會有驚喜)
當 break 和 continue 同時用于循環(huán)時吠冤,沒有加標簽浑彰,此時默認標簽為當前"循環(huán)"的代碼塊。
當 break 用于 switch 時拯辙,默認標簽為當前的 switch 代碼塊:
有名標簽的情況
cars=["BMW","Volvo","Saab","Ford"];list:{document.write(cars[0]+"");document.write(cars[1]+"");document.write(cars[2]+"");breaklist;document.write(cars[3]+"");document.write(cars[4]+"");document.write(cars[5]+"");}
上述break list;會跳出list的代碼塊郭变。如果將break換成continue會有驚喜,違反了明確中的第二點涯保,因為list只是個普通代碼塊诉濒,而不是循環(huán)。除非list寫成如下形式
list:
for(vari=0;i<10;++i){continuelist;}
有了標簽夕春,可以使用break和continue在多層循環(huán)的時候控制外層循環(huán)未荒。
例如下面:
outerloop:for(vari=0;i<10;i++){innerloop:for(varj=0;j<10;j++){if(j>3){break;}if(i==2){breakinnerloop;}if(i==4){breakouterloop;}document.write("i="+i+" j="+j+"");}}