Câu lệnh if

Câu lệnh điều kiện được sử dụng để thực hiện các hành động khác nhau dựa trên các điều kiện khác nhau.

Trong JavaScript, chúng ta có thể sử dụng các câu lệnh điều kiện sau:

  • Câu lệnh if - chỉ thực hiện mã code khi điều kiện được chỉ định là true
  • Câu lệnh if…else - thực hiện mã code khi điều kiện được chỉ định là true, và thực hiện mã code khác khi điều kiện là false
  • Câu lệnh if…else if…else - sử dụng câu lệnh này để chọn một trong nhiều khối mã code để thực thi
  • Câu lệnh switch - sử dụng câu lệnh này để chọn một trong nhiều khối mã code để thực thi

Khi một điều kiện logic là đúng, sử dụng câu lệnh if để thực hiện một câu lệnh. Khi điều kiện đó là sai, sử dụng mệnh đề else tùy chọn để thực hiện một câu lệnh khác.

Câu lệnh điều kiện đơn

if (condition) {
  statement_1;
}
[else {
  statement_2;
}] // Sử dụng cú pháp khối lệnh nghiêm ngặt được khuyến nghị, mệnh đề else là tùy chọn

Tham sốMô tả
conditionMột biểu thức trả về kết quả là true hoặc false (sẽ được chuyển đổi sang kiểu boolean bởi ECMAScript nếu không phải là kiểu boolean). Nếu điều kiện là true, statement1 sẽ được thực thi; nếu không, statement2 sẽ được thực thi
statement1Một câu lệnh bất kỳ (khối mã), thậm chí có thể là một câu lệnh if lồng nhau

Câu lệnh điều kiện nhiều tầng

if (condition_1) {
  statement_1;
} [else if (condition_2) {
  statement_2;
}]
...
[else if (condition_n_1) {
  statement_n_1;
}] [else {
  statement_n;
}]

Để thực hiện nhiều câu lệnh, bạn có thể sử dụng khối lệnh ({ … }) để nhóm chúng lại.

Ví dụ

Không khuyến nghị sử dụng trong biểu thức điều kiện

Không khuyến nghị sử dụng phép gán trong biểu thức điều kiện, vì nó dễ bị nhầm lẫn với phép so sánh bằng.

Không nên sử dụng mã sau:

if ((x = y)) {
  // làm gì đó
}

Nếu bạn cần sử dụng phép gán trong biểu thức, thì thường bạn nên thêm một cặp dấu ngoặc bổ sung trước và sau câu lệnh gán.

if ((x = y)) {
  // làm gì đó
}

Giá trị tương đương với giá trị sai

Các giá trị sau sẽ được tính là false:

  • false
  • undefined
  • null
  • 0
  • NaN
  • ""

Khi chúng được chuyển đến câu lệnh điều kiện, tất cả các giá trị khác, bao gồm tất cả các đối tượng, sẽ được tính là đúng.

Đừng nhầm lẫn giữa giá trị boolean nguyên thuỷ truefalse với giá trị đúng và sai của đối tượng Boolean.

var b = new Boolean(false);
 
if (b)
// điều kiện này tính là true
 
if (b == true)
// điều kiện này tính là false