HomeLập trìnhJavaScriptGiải thích về...

Giải thích về Tuyên bố nhãn, Tuyên bố tiếp tục và Tuyên bố ngắt


Tuyên bố nhãn

Các Tuyên bố nhãn được sử dụng với breakcontinue tuyên bố và phục vụ để xác định tuyên bố mà các breakcontinue tuyên bố áp dụng.

Chúng ta sẽ nói nhiều hơn về breakcontinue báo cáo dưới đây.

cú pháp

labelname:
  statements

Cách sử dụng

Nếu không sử dụng một labeled tuyên bố break câu lệnh chỉ có thể thoát ra khỏi một vòng lặp hoặc một switch bản tường trình. Sử dụng một labeled tuyên bố cho phép break để nhảy ra khỏi bất kỳ khối mã nào.

Ví dụ

foo: {
  console.log("This prints:");
  break foo;
  console.log("This will never print.");
}
console.log("Because execution jumps to here!")
/* output
This prints:
Because execution jumps to here! */

Khi được sử dụng với một continue tuyên bố labeled câu lệnh cho phép bạn bỏ qua một vòng lặp, lợi thế đến từ việc có thể nhảy từ vòng lặp bên trong sang vòng lặp bên ngoài khi bạn có các câu lệnh vòng lặp lồng nhau. Nếu không sử dụng một labeled câu lệnh, bạn chỉ có thể nhảy ra khỏi vòng lặp hiện có để chuyển sang next iteration of the same loop.

Ví dụ

// without labeled statement, when j==i inner loop jumps to next iteration
function test() {
  for (var i = 0; i < 3; i++) {
    console.log("i=" + i);
    for (var j = 0; j < 3; j++) {
      if (j === i) {
        continue;
      }
      console.log("j=" + j);
    }
  }
}

/* output
i=0 (note j=0 is missing)
j=1
j=2
i=1
j=0 (note j=1 is missing)
j=2
i=2
j=0
j=1 (note j=2 is missing)
*/

// using a labeled statement we can jump to the outer (i) loop instead
function test() {
  outer: for (var i = 0; i < 3; i++) {
    console.log("i=" + i);
    for (var j = 0; j < 3; j++) {
      if (j === i) {
        continue outer;
      }
      console.log("j=" + j);
    }
  }
}

/*
i=0 (j only logged when less than i)
i=1
j=0
i=2
j=0
j=1
*/

Tuyên bố phá vỡ

Các nghỉ câu lệnh kết thúc vòng lặp hiện tại, switch hoặc label câu lệnh và chuyển điều khiển chương trình sang câu lệnh theo sau câu lệnh đã kết thúc.

break;

Nếu nghỉ được sử dụng trong một câu lệnh có nhãn, cú pháp như sau:

break labelName;

ví dụ

Hàm sau đây có một nghỉ tuyên bố chấm dứt while vòng lặp khi tôi là 3, rồi trả về giá trị 3 * x.

function testBreak(x) {
  var i = 0;

  while (i < 6) {
    if (i == 3) {
      break;
    }
    i += 1;
  }

  return i * x;
}
:tên lửa:

Mã vận hành

Đọc thêm  JavaScript 数组完全手册

Trong ví dụ sau, bộ đếm được thiết lập để đếm từ 1 đến 99; tuy nhiên, nghỉ câu lệnh kết thúc vòng lặp sau 14 lần đếm.

for (var i = 1; i < 100; i++) {
  if (i == 15) {
    break;
  }
}
:tên lửa:

Mã vận hành

tiếp tục tuyên bố

Các tiếp tục câu lệnh kết thúc việc thực thi các câu lệnh trong lần lặp hiện tại của vòng lặp hiện tại hoặc vòng lặp đã dán nhãn và tiếp tục thực hiện vòng lặp với lần lặp tiếp theo.

continue;

Nếu tiếp tục được sử dụng trong một câu lệnh có nhãn, cú pháp như sau:

continue labelName;

Trái ngược với nghỉ bản tường trình, tiếp tục không chấm dứt hoàn toàn việc thực hiện vòng lặp; thay thế:

  • trong một while vòng lặp, nó nhảy trở lại điều kiện.
  • trong một for vòng lặp, nó nhảy đến biểu thức cập nhật.

ví dụ

Ví dụ sau đây cho thấy một while vòng lặp có một tiếp tục câu lệnh thực thi khi giá trị của tôi là 3. Như vậy, N nhận các giá trị 1, 3, 7, 12.

var i = 0;
var n = 0;

while (i < 5) {
  i++;

  if (i === 3) {
    continue;
  }

  n += i;
  console.log (n);
}
:tên lửa:

Mã vận hành

Trong ví dụ sau, một vòng lặp lặp từ 1 đến 9. Các câu lệnh giữa tiếp tục và kết thúc của for cơ thể bị bỏ qua vì việc sử dụng tiếp tục phát biểu cùng với biểu thức (i < 5).

for (var i = 1; i < 10; i++) {
    if (i < 5) {
        continue;
    }
    console.log (i);
}
:tên lửa:

Mã vận hành

Đọc thêm  Hướng dẫn về khóa đối tượng JavaScript – Cách sử dụng cặp khóa-giá trị JS



Zik.vn – Biên dịch & Biên soạn Lại

spot_img

Create a website from scratch

Just drag and drop elements in a page to get started with Newspaper Theme.

Buy Now ⟶

Bài viết liên quang

DMCA.com Protection Status