Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Cách dùng label kiểm soát luồng trong JavaScript

Label là gì?

Label là identifier theo sau : gắn cho statement/block. Dùng với break/continue để chỉ định vòng lặp mục tiêu (thường là nested loop).

Break với Label

<script>
document.write("Vao vong lap<br>");
outer: for (var i = 0; i < 5; i++) {
  document.write("Outer: " + i + "<br>");
  inner: for (var j = 0; j < 5; j++) {
    if (j > 3) break;           // thoát inner
    if (i == 2) break inner;    // thoát inner (tường minh)
    if (i == 4) break outer;    // thoát outer
    document.write("  Inner: " + j + "<br>");
  }
}
document.write("Thoat!<br>");
</script>

Continue với Label

<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>

Lưu ý

  • Label không tạo block scope mới.
  • Chỉ dùng với break/continue – không thể goto label (JS không có goto).
  • Ít gặp trong code hiện đại – ưu tiên refactor (tách hàm, dùng array methods).