Các cấu trúc điều khiển trong hướng dẫn JavaScript

Hầu hết các ngôn ngữ lập trình bao gồm các 'khối gạch' giống như mã thông báo (từ khóa, biến, toán tử,. ), các biểu thức như

if ( condition ) {
  // block of statements
}
3, các câu lệnh (được phân định bởi
if ( condition ) {
  // block of statements
}
4), các khối
if ( condition ) {
  // block of statements
}
5, các hàm và mô-đun. Thoạt nhìn, việc thực hiện chương trình tuân theo trình tự các câu lệnh, từ trên xuống. Nhưng trong hầu hết các trường hợp, chương trình không chạy theo thứ tự nghiêm ngặt của các câu lệnh đã viết. Thay vào đó, một số phần chỉ được chạy nếu áp dụng một số điều kiện nhất định và những phần khác sẽ bị bỏ qua và chạy trong các điều kiện khác. Hoặc, có thể cần thiết rằng một số phần được thực hiện lặp đi lặp lại. Các phần khác có thể chạy song song và đồng bộ sau. Hoặc, một chức năng của một mô-đun khác phải tính toán một giá trị trước khi câu lệnh tiếp theo có thể được thực thi

Trong hệ thống phân cấp của 'khối ngôn ngữ' này, khối thuật ngữ là điều cần thiết để hiểu được luồng chương trình. Trong JavaScript, một khối là một chuỗi gồm 0 hoặc nhiều câu lệnh (hoặc các khối nhỏ hơn) được bao quanh bởi dấu ngoặc nhọn

if ( condition ) {
  // block of statements
}
6. Các cấu trúc ngôn ngữ mà chúng ta thảo luận ở đây gọi hoặc lặp lại các khối

Câu lệnh

if ( condition ) {
  // block of statements
}
7 (vâng, đó là một câu lệnh đơn, mặc dù nó chứa các câu lệnh khác trong các khối của nó) gọi việc thực thi một trong hai khối tùy thuộc vào việc đánh giá một điều kiện. Việc đánh giá trả về một. Nếu là
if ( condition ) {
  // block of statements
}
8, khối đầu tiên được thực thi; . Khối khác tương ứng được bỏ qua

if ( condition ) {
  // block of statements
} else {
  // block of statements
}

Phần

"use strict";
const a = 3;
const b = "3";
if (a == b) {
  alert("The two variables contains the same value, but may have different data types.");
} else {
  alert("The two variables contain different values.");
}

// an example without 'else'
const c = 6 / 2;
if (a === c) {
  alert("The two variables contains the same value and are of the same data type.");
}
0 là tùy chọn, tôi. e. có thể sử dụng
"use strict";
const a = 3;
const b = "3";
if (a == b) {
  alert("The two variables contains the same value, but may have different data types.");
} else {
  alert("The two variables contain different values.");
}

// an example without 'else'
const c = 6 / 2;
if (a === c) {
  alert("The two variables contains the same value and are of the same data type.");
}
1 mà không cần phần
"use strict";
const a = 3;
const b = "3";
if (a == b) {
  alert("The two variables contains the same value, but may have different data types.");
} else {
  alert("The two variables contain different values.");
}

// an example without 'else'
const c = 6 / 2;
if (a === c) {
  alert("The two variables contains the same value and are of the same data type.");
}
0 và khối của nó

if ( condition ) {
  // block of statements
}

Một ví dụ

________số 8_______

Nếu một trong hai khối chứa chính xác MỘT câu lệnh, thì có thể bỏ qua dấu ngoặc nhọn. Nhưng để mã rõ ràng, chúng tôi khuyên bạn nên sử dụng cú pháp thống nhất với dấu ngoặc nhọn

// same as above; but this abbreviated syntax is not recommended.

"use strict";
const a = 3;
const b = "3";

if (a == b) alert("The two variables contains the same value, but may have different data types.");
else alert("The two variables contain different values.");

const c = 6 / 2;
if (a === c) alert("The two variables contains the same value and are of the same data type.");

Trong nhiều trường hợp, tình huống đòi hỏi những quyết định phức tạp hơn là một phương án đúng/sai đơn giản. Ví dụ: bạn có thể muốn biết một số là số âm, số 0 hay số dương. Trong những trường hợp như vậy, một giải pháp có thể trông như thế này

"use strict";
const x = 3;

if (x < 0) {
  alert("The number is negative.");
} else {
  // x is equal or greater than 0
  if (x === 0) {
    alert("The number zero.");
  } else {
    alert("The number is positive.");
  }
}

Bạn có thể rút ngắn mã này một chút mà không làm mất đi sự rõ ràng. Bởi vì khối

"use strict";
const a = 3;
const b = "3";
if (a == b) {
  alert("The two variables contains the same value, but may have different data types.");
} else {
  alert("The two variables contain different values.");
}

// an example without 'else'
const c = 6 / 2;
if (a === c) {
  alert("The two variables contains the same value and are of the same data type.");
}
0 đầu tiên chỉ chứa một câu lệnh duy nhất - cụ thể là khối lệnh thứ hai
"use strict";
const a = 3;
const b = "3";
if (a == b) {
  alert("The two variables contains the same value, but may have different data types.");
} else {
  alert("The two variables contain different values.");
}

// an example without 'else'
const c = 6 / 2;
if (a === c) {
  alert("The two variables contains the same value and are of the same data type.");
}
1 - bạn có thể bỏ qua dấu ngoặc nhọn của nó và kết hợp khối lệnh đầu tiên
"use strict";
const a = 3;
const b = "3";
if (a == b) {
  alert("The two variables contains the same value, but may have different data types.");
} else {
  alert("The two variables contain different values.");
}

// an example without 'else'
const c = 6 / 2;
if (a === c) {
  alert("The two variables contains the same value and are of the same data type.");
}
0 và khối lệnh thứ hai
"use strict";
const a = 3;
const b = "3";
if (a == b) {
  alert("The two variables contains the same value, but may have different data types.");
} else {
  alert("The two variables contain different values.");
}

// an example without 'else'
const c = 6 / 2;
if (a === c) {
  alert("The two variables contains the same value and are of the same data type.");
}
1 trong một dòng

"use strict";
const x = 3;

if (x < 0) {
  alert("The number is negative.");
} else if (x === 0) {
  alert("The number is zero.");
} else {
  alert("The number is positive.");
}

Đây là một phong cách lập trình rõ ràng và thường được sử dụng. Nó được sử dụng trong các tình huống mà bạn có nhiều lựa chọn có thể quản lý được hoặc khi bạn phải đưa ra quyết định với nhiều biến số

Nếu số lượng các quyết định tăng lên đáng kể, mã sẽ rõ ràng hơn nếu bạn sử dụng câu lệnh

"use strict";
const a = 3;
const b = "3";
if (a == b) {
  alert("The two variables contains the same value, but may have different data types.");
} else {
  alert("The two variables contain different values.");
}

// an example without 'else'
const c = 6 / 2;
if (a === c) {
  alert("The two variables contains the same value and are of the same data type.");
}
7 thay vì một danh sách dài các điều kiện
"use strict";
const a = 3;
const b = "3";
if (a == b) {
  alert("The two variables contains the same value, but may have different data types.");
} else {
  alert("The two variables contain different values.");
}

// an example without 'else'
const c = 6 / 2;
if (a === c) {
  alert("The two variables contains the same value and are of the same data type.");
}
8

Câu lệnh

"use strict";
const a = 3;
const b = "3";
if (a == b) {
  alert("The two variables contains the same value, but may have different data types.");
} else {
  alert("The two variables contain different values.");
}

// an example without 'else'
const c = 6 / 2;
if (a === c) {
  alert("The two variables contains the same value and are of the same data type.");
}
7 đánh giá một biểu thức và điều khiển luồng câu lệnh dựa trên việc so sánh kết quả của nó với các nhãn đằng sau từ khóa
// same as above; but this abbreviated syntax is not recommended.

"use strict";
const a = 3;
const b = "3";

if (a == b) alert("The two variables contains the same value, but may have different data types.");
else alert("The two variables contain different values.");

const c = 6 / 2;
if (a === c) alert("The two variables contains the same value and are of the same data type.");
0

"use strict";

const myVar = "a";

// evaluation takes simple variables as well as complex expressions
switch (myVar.toUpperCase()) {
case "A":
  // …
  break;
case "B":
  // …
  break;
default:   // analog to 'else' without any further 'if'
  // …
  break;
}

Nếu kết quả đánh giá khớp với một trong các nhãn, JavaScript sẽ thực thi các câu lệnh sau cho đến

// same as above; but this abbreviated syntax is not recommended.

"use strict";
const a = 3;
const b = "3";

if (a == b) alert("The two variables contains the same value, but may have different data types.");
else alert("The two variables contain different values.");

const c = 6 / 2;
if (a === c) alert("The two variables contains the same value and are of the same data type.");
1 tiếp theo hoặc kết thúc toàn bộ
"use strict";
const a = 3;
const b = "3";
if (a == b) {
  alert("The two variables contains the same value, but may have different data types.");
} else {
  alert("The two variables contain different values.");
}

// an example without 'else'
const c = 6 / 2;
if (a === c) {
  alert("The two variables contains the same value and are of the same data type.");
}
7. Nếu không có nhãn nào phù hợp, việc thực thi tiếp tục tại nhãn
// same as above; but this abbreviated syntax is not recommended.

"use strict";
const a = 3;
const b = "3";

if (a == b) alert("The two variables contains the same value, but may have different data types.");
else alert("The two variables contain different values.");

const c = 6 / 2;
if (a === c) alert("The two variables contains the same value and are of the same data type.");
3 hoặc - nếu không có nhãn nào - bỏ qua toàn bộ câu lệnh
"use strict";
const a = 3;
const b = "3";
if (a == b) {
  alert("The two variables contains the same value, but may have different data types.");
} else {
  alert("The two variables contain different values.");
}

// an example without 'else'
const c = 6 / 2;
if (a === c) {
  alert("The two variables contains the same value and are of the same data type.");
}
7

Nhãn là chữ hoặc biểu thức; . g. ,

// same as above; but this abbreviated syntax is not recommended.

"use strict";
const a = 3;
const b = "3";

if (a == b) alert("The two variables contains the same value, but may have different data types.");
else alert("The two variables contain different values.");

const c = 6 / 2;
if (a === c) alert("The two variables contains the same value and are of the same data type.");
5 là có thể

Ngay sau khi đạt được câu lệnh

// same as above; but this abbreviated syntax is not recommended.

"use strict";
const a = 3;
const b = "3";

if (a == b) alert("The two variables contains the same value, but may have different data types.");
else alert("The two variables contain different values.");

const c = 6 / 2;
if (a === c) alert("The two variables contains the same value and are of the same data type.");
1, việc thực hiện câu lệnh
"use strict";
const a = 3;
const b = "3";
if (a == b) {
  alert("The two variables contains the same value, but may have different data types.");
} else {
  alert("The two variables contain different values.");
}

// an example without 'else'
const c = 6 / 2;
if (a === c) {
  alert("The two variables contains the same value and are of the same data type.");
}
7 sẽ bị chấm dứt. Thông thường, nó xuất hiện ở cuối mỗi trường hợp để ngăn việc thực thi mã của các trường hợp sau. Nhưng nó có thể được bỏ qua nếu bạn cố tình muốn thực hiện chúng ngoài những cái hiện tại. Trong ví dụ sau, mã tương tự sẽ chạy cho
// same as above; but this abbreviated syntax is not recommended.

"use strict";
const a = 3;
const b = "3";

if (a == b) alert("The two variables contains the same value, but may have different data types.");
else alert("The two variables contain different values.");

const c = 6 / 2;
if (a === c) alert("The two variables contains the same value and are of the same data type.");
8 bằng 1, 2 hoặc 3

"use strict";

const i = 2;

switch(i) {
case 1:
case 2:
case 3:
  // …
  break;
case 4:
  // …
  break;
default:
  // …
  break;
}

Bởi vì biểu thức được đánh giá cũng như các nhãn có thể là các biểu thức phức tạp, nên có thể xây dựng các cấu trúc rất linh hoạt

"use strict";

const i = 2;

switch(true) { // in this example it's a constant value
case (i < 10):
  alert("one digit");
  break;
case (i >= 10 && i < 100):
  alert("two digits");
  break;
default:
  // …
  break;
}


Từ khóa

// same as above; but this abbreviated syntax is not recommended.

"use strict";
const a = 3;
const b = "3";

if (a == b) alert("The two variables contains the same value, but may have different data types.");
else alert("The two variables contain different values.");

const c = 6 / 2;
if (a === c) alert("The two variables contains the same value and are of the same data type.");
9 không áp dụng cho câu lệnh
"use strict";
const a = 3;
const b = "3";
if (a == b) {
  alert("The two variables contains the same value, but may have different data types.");
} else {
  alert("The two variables contain different values.");
}

// an example without 'else'
const c = 6 / 2;
if (a === c) {
  alert("The two variables contains the same value and are of the same data type.");
}
7

Nếu có khả năng xảy ra lỗi thời gian chạy, bạn có thể 'bắt' lỗi đó và thực hiện các hành động có ý nghĩa để xử lý tình huống. e. g. , kết nối mạng hoặc cơ sở dữ liệu có thể không còn nữa; .

try {
  // critical block where errors might occur
} catch (err) {
  // block to handle possible errors. Normally not executed.
} finally {
  // block that will be executed in ALL cases
}

if ( condition ) {
  // block of statements
}
0

Nếu một trong các câu lệnh trong khối quan trọng gây ra lỗi thời gian chạy, thì việc thực thi các câu lệnh còn lại của nó sẽ bị bỏ qua. Thay vào đó, việc thực thi gọi khối bắt. Cuối cùng, khối cuối cùng được thực thi

Xin lưu ý rằng khối cuối cùng được thực thi trong mọi trường hợp, bất kể có xảy ra lỗi thời gian chạy hay không. Điều đó thậm chí còn áp dụng nếu khối quan trọng hoặc khối bắt thực thi câu lệnh

"use strict";
const x = 3;

if (x < 0) {
  alert("The number is negative.");
} else {
  // x is equal or greater than 0
  if (x === 0) {
    alert("The number zero.");
  } else {
    alert("The number is positive.");
  }
}
1

Trong ví dụ trên, công cụ JavaScript tự đưa ra một ngoại lệ. Trong các tình huống khác, công cụ JavaScript hoạt động theo cách này hay cách khác, nhưng bạn có thể muốn thấy nó được xử lý theo cách khác. e. g. , trong trường hợp chia cho 0, động cơ không đưa ra lỗi; . Nếu bạn muốn một hành vi khác, bạn có thể tạo và đưa ra các ngoại lệ bằng chương trình của riêng mình

if ( condition ) {
  // block of statements
}
1

Nếu một ngoại lệ xảy ra - do công cụ JavaScript hoặc chương trình của bạn tạo ra - và không bị bắt bởi khối catch, thì tập lệnh sẽ kết thúc hoặc - nếu đó là một hàm - nó sẽ trả lại quyền điều khiển cho hàm gọi. Việc xử lý lỗi có thể được thực hiện ở đó hoặc ở một trong các chức năng đã được gọi là nó

if ( condition ) {
  // block of statements
}
2

có sẵn trên một trang khác (bấm vào đây)

Vòng lặp và phép lặp là các trường hợp khác trong đó luồng câu lệnh tuần tự được thao tác bởi các cấu trúc ngôn ngữ xung quanh. Điều này được mô tả trên trang tiếp theo

Câu lệnh điều khiển trong JavaScript là gì?

Các câu lệnh kiểm soát được được thiết kế để cho phép bạn tạo các tập lệnh có thể quyết định dòng mã nào được đánh giá hoặc số lần đánh giá chúng . Có hai loại câu lệnh điều khiển khác nhau. câu điều kiện và câu lệnh lặp.

Làm cách nào để kiểm soát vòng lặp trong JavaScript?

JavaScript hỗ trợ các loại vòng lặp khác nhau. .
for - lặp qua một khối mã một số lần
for/in - lặp qua các thuộc tính của một đối tượng
for/of - lặp qua các giá trị của một đối tượng có thể lặp lại
while - lặp qua một khối mã trong khi một điều kiện cụ thể là đúng

Các loại câu lệnh khác nhau trong JavaScript là gì?

Các câu lệnh JavaScript bao gồm. Giá trị, Toán tử, Biểu thức, Từ khóa và Nhận xét .

Chúng ta có thể sử dụng vòng lặp while trong JavaScript không?

Các vòng lặp có thể thực thi một khối mã miễn là một điều kiện cụ thể là đúng .