Mục đích
Dùng continue label để bỏ qua iteration hiện tại của vòng lặp ngoài cùng (hoặc bất kỳ vòng lặp nào có label đó).
Ví dụ
<script>
document.write("Vao vong lap<br>");
outer: for (var i = 0; i < 3; i++) {
document.write("Outer: " + i + "<br>");
for (var j = 0; j < 5; j++) {
if (j == 3) continue outer; // bỏ qua j=3,4, sang i++
document.write(" Inner: " + j + "<br>");
}
}
document.write("Thoat!<br>");
</script>
Kết quả
Vao vong lap Outer: 0 Inner: 0 Inner: 1 Inner: 2 Outer: 1 Inner: 0 Inner: 1 Inner: 2 Outer: 2 Inner: 0 Inner: 1 Inner: 2 Thoat!
So sánh break vs continue với label
| break label | continue label |
|---|---|
| Thoát hoàn toàn vòng lặp có label | Bỏ qua iteration hiện tại của vòng lặp có label |
| Nhảy đến sau block của vòng đó | Nhảy đến iteration tiếp theo của vòng đó |
Khuyến nghị
- Ít khi cần – code phức tạp, khó đọc.
- Thay thế: tách hàm, dùng
for...of+break/return, filter/map.