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

Cách dùng label với break trong JavaScript

Mục đích

break label thoát khỏi vòng lặp có label đó (thường là outer loop trong nested loop).

Ví dụ

<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 (explicit)
    if (i == 4) break outer;    // thoát outer
    document.write("  Inner: " + j + "<br>");
  }
}
document.write("Thoat!<br>");
</script>

Kết quả

Vao vong lap
Outer: 0
  Inner: 0
  Inner: 1
  Inner: 2
  Inner: 3
Outer: 1
  Inner: 0
  Inner: 1
  Inner: 2
  Inner: 3
Outer: 2
  Inner: 0
  Inner: 1
  Inner: 2
  Inner: 3
Outer: 3
  Inner: 0
  Inner: 1
  Inner: 2
  Inner: 3
Outer: 4
Thoat!

Khi nào dùng

  • Nested loop cần thoát nhiều cấp.
  • Tìm kiếm: tìm thấy → break outer.

Thay thế hiện đại

// Dùng function + return
function find() {
  for (const i of arr1) {
    for (const j of arr2) {
      if (match(i, j)) return {i, j}; // thoát hẳn
    }
  }
  return null;
}

// Hoặc Array methods
arr1.some(i => arr2.some(j => match(i, j))); // boolean