1. 程式人生 > 其它 >JavaScript:控制跳轉:break、continue與標籤

JavaScript:控制跳轉:break、continue與標籤

在迴圈結構中,經常需要使用關鍵字breakcontinue來控制跳轉;

遇到break,就會跳出迴圈結構,執行迴圈體後面的程式碼;

遇到continue,就會跳出本次迴圈,進入下一次迴圈;

那麼,假如有巢狀迴圈,我在內迴圈中,想直接跳轉到最外層迴圈,執行最外層迴圈體後面的程式碼,該怎麼做呢?

在JS中,有一個類似於C/C++中的goto語句,通常並不推薦goto語句,因為它破壞了結構;

它就是標籤,它的用法是這樣的,標籤名:迴圈體

配合break 標籤名進行跳轉,具體看下面程式碼:

此處標籤名是here,後面跟著雙層for迴圈,在內層迴圈通過break here,直接跳出到最外層迴圈的here

處,然後執行最外層迴圈後面的程式碼,輸出了get out

注意,雖然break here按照邏輯來說,是跳轉到標籤here那裡,然後按理說,應該是再繼續here後面的程式碼,也就是又進入了雙層for迴圈;但是實際上不是的,實際上是執行here所在的迴圈體的後面的程式碼;

這就是標籤的反直覺的用法,很容易迷惑大家。

另外,標籤必須在break的前面,如果在後面,break是無法跳轉的。