出場:
首先我們來說說為什麼需要label標籤,雖然我們已經知道有break,continue跳出循環,但如果是多重循環那麼它們就顯的無能為力了,所以就出現了label這個標籤來為我們服務。
我們先來看看單獨使用break的狀況
for(var i=0;i<4;i++){ for(var j=0;j<4;j++){ if(i===1&&j===1){ break; }else{ console.log("i:"+i+"--j:"+j); } } }
運行結果:
i:0--j:0 i:0--j:1 i:0--j:2 i:0--j:3 i:1--j:0 当i和j===1的时候,它只跳出了j循环,因此它又会回到i循环体 i:2--j:0 i:2--j:1 i:2--j:2 i:2--j:3 i:3--j:0 i:3--j:1 i:3--j:2 i:3--j:3
從上面的運行結果我們可以發現如果單純的使用break遠遠不能完成一些複雜的操作。
label標籤可以是任意的名稱,但不能是保留字,他們幾乎是和break;continue;搭配使用。
bk:for(var i=0;i<4;i++){ for(var j=0;j<4;j++){ if(i===1&&j===1){ break bk; }else{ console.log("i:"+i+"--j:"+j); } } }
運行結果:
1 i:0--j:0 2 i:0--j:1 3 i:0--j:2 4 i:0--j:3 5 i:1--j:0
成功跳出循環。
提試:bk只是一個名稱,你隨意,當然不能是js中的關鍵字
continue用法一樣,不舉例。
很簡單的例子,希望對大家的學習有幫助。