Câu lệnh điều kiện if, else, else if trong JavaScript

Javascript căn bản | by Học Javascript

Trong lập trình JavaScript, câu lệnh điều kiện đóng vai trò quan trọng trong việc kiểm soát luồng thực thi của chương trình. Bằng cách sử dụng if, elseelse if, chúng ta có thể kiểm tra các điều kiện khác nhau và đưa ra các quyết định tương ứng.Các câu lệnh này giúp xử lý các tình huống như xác minh dữ liệu người dùng, điều hướng luồng chương trình, hiển thị nội dung phù hợp, hoặc thực hiện các thao tác khác dựa trên điều kiện cụ thể. Hiểu và sử dụng thành thạo if, else, else if là kỹ năng quan trọng đối với mọi lập trình viên JavaScript.

Câu lệnh if trong JavaScript

Câu lệnh if trong JavaScript dùng để kiểm tra một điều kiện cụ thể. Nếu điều kiện được đánh giá là đúng (true), đoạn mã bên trong khối { } sẽ được thực thi. Nếu điều kiện sai (false), chương trình sẽ bỏ qua đoạn mã đó và tiếp tục thực thi các câu lệnh sau if.

Câu lệnh if giúp lập trình viên kiểm soát luồng thực thi của chương trình, tránh thực hiện những đoạn mã không cần thiết khi điều kiện không được đáp ứng.

Cú pháp của câu lệnh if

if (điều_kiện) {
    // Code thực thi nếu điều kiện đúng
}
  • điều_kiện: Một biểu thức trả về giá trị true hoặc false.
  • Nếu điều_kiện đúng (true), đoạn mã bên trong { } sẽ được thực thi.
  • Nếu điều_kiện sai (false), chương trình sẽ bỏ qua đoạn mã bên trong { } và tiếp tục thực thi các phần còn lại của chương trình.

Ví dụ minh họa

Ví dụ 1: Kiểm tra số dương

let number = 10;
if (number > 0) {
    console.log("Số dương");
}

Giải thích:

  • Biến number có giá trị 10.
  • Điều kiện number > 0 sẽ được kiểm tra.
  • 10 lớn hơn 0, điều kiện đúng (true), nên lệnh console.log("Số dương") sẽ được thực thi.

Kết quả đầu ra:

Số dương

Ví dụ 2: Kiểm tra độ tuổi hợp lệ để đăng ký tài khoản

let age = 18;
if (age >= 18) {
    console.log("Bạn đủ tuổi để đăng ký tài khoản.");
}

Giải thích:

  • Biến age có giá trị 18.
  • Điều kiện age >= 18 được kiểm tra.
  • 18 lớn hơn hoặc bằng 18, điều kiện đúng (true), nên câu lệnh console.log("Bạn đủ tuổi để đăng ký tài khoản.") sẽ chạy.

Kết quả đầu ra:

Bạn đủ tuổi để đăng ký tài khoản.

Ví dụ 3: Kiểm tra xem một chuỗi có rỗng hay không

let username = "John";
if (username) {
    console.log("Tên người dùng hợp lệ: " + username);
}

Giải thích:

  • Biến username chứa chuỗi "John".
  • Trong JavaScript, một chuỗi không rỗng ("John") được coi là truthy (true).
  • Vì điều kiện là true, chương trình sẽ in ra "Tên người dùng hợp lệ: John".

Kết quả đầu ra:

Tên người dùng hợp lệ: John

Ví dụ 4: Kiểm tra số chẵn

let num = 8;
if (num % 2 === 0) {
    console.log(num + " là số chẵn.");
}

Giải thích:

  • Biến num có giá trị 8.
  • Điều kiện num % 2 === 0 kiểm tra xem 8 có chia hết cho 2 không.
  • 8 % 2 cho kết quả 0, điều kiện đúng (true), nên chương trình in ra "8 là số chẵn.".

Kết quả đầu ra:

8 là số chẵn.

Câu lệnh if...else trong JavaScript

Trong JavaScript, câu lệnh if...else được sử dụng khi chúng ta muốn kiểm tra một điều kiện và thực hiện hành động khác nếu điều kiện đó không đúng.

  • Câu lệnh if kiểm tra một điều kiện. Nếu điều kiện đúng (true), đoạn mã bên trong if sẽ được thực thi.
  • Nếu điều kiện sai (false), chương trình sẽ bỏ qua if và thực thi khối else.

Câu lệnh if...else giúp chương trình có thể xử lý hai trường hợp khác nhau một cách linh hoạt.

Cú pháp của câu lệnh if...else

if (điều_kiện) {
    // Thực thi nếu điều kiện đúng (true)
} else {
    // Thực thi nếu điều kiện sai (false)
}
  • điều_kiện: Một biểu thức trả về giá trị true hoặc false.
  • Nếu điều_kiện đúng (true), khối mã trong if sẽ được thực thi.
  • Nếu điều_kiện sai (false), khối mã trong else sẽ được thực thi.
if (điều_kiện_1) {
    // Thực thi nếu điều_kiện_1 đúng
} else if (điều_kiện_2) {
    // Thực thi nếu điều_kiện_1 sai và điều_kiện_2 đúng
} else if (điều_kiện_3) {
    // Thực thi nếu điều_kiện_1 và điều_kiện_2 sai, nhưng điều_kiện_3 đúng
} else {
    // Thực thi nếu tất cả điều kiện trước đó sai
}

Ví dụ 1: Kiểm tra số dương hoặc số âm

let number = -5;
if (number >= 0) {
    console.log("Số không âm");
} else {
    console.log("Số âm");
}

Giải thích:

  • Biến number có giá trị -5.
  • Điều kiện number >= 0 được kiểm tra.
  • -5 không lớn hơn hoặc bằng 0, điều kiện sai (false), nên chương trình thực thi khối else và in ra "Số âm".

Kết quả đầu ra:

Số âm

Ví dụ 2: Kiểm tra điều kiện đăng nhập

let isLoggedIn = false;
if (isLoggedIn) {
    console.log("Chào mừng bạn quay trở lại!");
} else {
    console.log("Vui lòng đăng nhập để tiếp tục.");
}

Giải thích:

  • Biến isLoggedIn có giá trị false.
  • Điều kiện isLoggedInfalse, nên chương trình bỏ qua if và thực thi khối else, in ra "Vui lòng đăng nhập để tiếp tục.".

Kết quả đầu ra:

Vui lòng đăng nhập để tiếp tục.

Ví dụ 3: Kiểm tra số chẵn hoặc số lẻ

let num = 7;
if (num % 2 === 0) {
    console.log(num + " là số chẵn.");
} else {
    console.log(num + " là số lẻ.");
}

Giải thích:

  • Biến num có giá trị 7.
  • Điều kiện num % 2 === 0 kiểm tra xem 7 có chia hết cho 2 không.
  • 7 % 2 cho kết quả 1 (khác 0), điều kiện sai (false), nên chương trình chạy khối else, in ra "7 là số lẻ.".

Kết quả đầu ra:

7 là số lẻ.

Ví dụ 4: Kiểm tra độ tuổi để vào trang web

let age = 16;
if (age >= 18) {
    console.log("Bạn đủ tuổi để truy cập trang web.");
} else {
    console.log("Bạn chưa đủ tuổi để truy cập trang web.");
}

Giải thích:

  • Biến age có giá trị 16.
  • Điều kiện age >= 18 được kiểm tra.
  • 16 nhỏ hơn 18, điều kiện sai (false), nên chương trình thực thi khối else, in ra "Bạn chưa đủ tuổi để truy cập trang web.".

Kết quả đầu ra:

Bạn chưa đủ tuổi để truy cập trang web.

Câu lệnh if...else if...else trong JavaScript

Câu lệnh if...else if...else trong JavaScript được sử dụng khi cần kiểm tra nhiều điều kiện liên tiếp.

  • Câu lệnh if được kiểm tra đầu tiên.
  • Nếu điều kiện if đúng (true), khối mã trong if sẽ được thực thi và các điều kiện sau đó bị bỏ qua.
  • Nếu điều kiện if sai (false), chương trình sẽ kiểm tra các điều kiện else if.
  • Nếu tất cả điều kiện trước đó đều sai, khối else sẽ được thực thi.

Cú pháp của câu lệnh if...else if...else

if (điều_kiện_1) {
    // Thực thi nếu điều_kiện_1 đúng
} else if (điều_kiện_2) {
    // Thực thi nếu điều_kiện_1 sai và điều_kiện_2 đúng
} else if (điều_kiện_3) {
    // Thực thi nếu điều_kiện_1 và điều_kiện_2 sai, nhưng điều_kiện_3 đúng
} else {
    // Thực thi nếu tất cả điều kiện trước đó sai
}
  • điều_kiện_1, điều_kiện_2, điều_kiện_3, ... là các biểu thức kiểm tra, trả về true hoặc false.
  • Nếu một điều kiện đúng (true), các điều kiện sau đó sẽ không được kiểm tra.
  • Nếu không có điều kiện nào đúng, khối else sẽ được thực thi.

Ví dụ minh họa

Ví dụ 1: Xếp loại học sinh theo điểm

let score = 85;

if (score >= 90) {
    console.log("Xếp loại A");
} else if (score >= 75) {
    console.log("Xếp loại B");
} else if (score >= 50) {
    console.log("Xếp loại C");
} else {
    console.log("Xếp loại D");
}

Giải thích:

  • Biến score có giá trị 85.
  • Điều kiện score >= 90 sai, nên chương trình kiểm tra điều kiện score >= 75.
  • 85 >= 75đúng, khối console.log("Xếp loại B"); được thực thi.
  • Các điều kiện sau đó bị bỏ qua.

Kết quả đầu ra:

Xếp loại B

Ví dụ 2: Xác định thời gian trong ngày

let hour = 14;

if (hour < 12) {
    console.log("Chào buổi sáng!");
} else if (hour < 18) {
    console.log("Chào buổi chiều!");
} else {
    console.log("Chào buổi tối!");
}

Giải thích:

  • Biến hour có giá trị 14.
  • Điều kiện hour < 12 sai, chương trình tiếp tục kiểm tra hour < 18.
  • 14 < 18đúng, khối console.log("Chào buổi chiều!"); được thực thi.

Kết quả đầu ra:

Chào buổi chiều!

Ví dụ 3: Kiểm tra độ tuổi và đưa ra gợi ý hành động

let age = 17;

if (age >= 18) {
    console.log("Bạn đủ tuổi để đăng ký.");
} else if (age >= 16) {
    console.log("Bạn cần sự đồng ý của phụ huynh để đăng ký.");
} else {
    console.log("Bạn chưa đủ tuổi để đăng ký.");
}

Giải thích:

  • Biến age có giá trị 17.
  • Điều kiện age >= 18 sai, chương trình kiểm tra age >= 16.
  • 17 >= 16đúng, chương trình thực thi console.log("Bạn cần sự đồng ý của phụ huynh để đăng ký.");.

Kết quả đầu ra:

Bạn cần sự đồng ý của phụ huynh để đăng ký.

Ví dụ 4: Xác định loại hình thời tiết

let temperature = 30;

if (temperature >= 35) {
    console.log("Thời tiết rất nóng!");
} else if (temperature >= 25) {
    console.log("Thời tiết ấm áp.");
} else if (temperature >= 15) {
    console.log("Thời tiết mát mẻ.");
} else {
    console.log("Thời tiết lạnh.");
}

Giải thích:

  • Biến temperature có giá trị 30.
  • Điều kiện temperature >= 35 sai, kiểm tra tiếp temperature >= 25.
  • 30 >= 25đúng, chương trình in "Thời tiết ấm áp.".

Kết quả đầu ra:

Thời tiết ấm áp.

Lưu ý khi sử dụng if...else if...else

Sắp xếp điều kiện từ cụ thể đến tổng quát:

  • Các điều kiện có giá trị lớn hơn nên được đặt trước để tránh kiểm tra không cần thiết.
  • Ví dụ: if (score >= 90) nên đặt trước if (score >= 75) để đảm bảo điều kiện đúng được xử lý sớm.

Sử dụng else khi cần xử lý mặc định:

  • else đảm bảo có một hành động được thực hiện ngay cả khi tất cả các điều kiện trước đó đều sai.

Tránh quá nhiều else if:

  • Nếu có nhiều điều kiện phức tạp, có thể dùng switch thay vì if...else if...else để mã nguồn dễ đọc hơn.

Ứng dụng thực tế của if, else, else if trong JavaScript

Câu lệnh điều kiện if, else, else if có rất nhiều ứng dụng trong thực tế, đặc biệt trong việc kiểm tra dữ liệu, xử lý giao diện, phân quyền người dùng, và lập trình trò chơi. Dưới đây là một số ví dụ minh họa chi tiết.

Kiểm tra đăng nhập và phân quyền người dùng

Một trong những ứng dụng quan trọng nhất của if, else if, else là kiểm tra đăng nhập và phân quyền người dùng trong hệ thống.

Ví dụ: Kiểm tra đăng nhập

let isAuthenticated = true;

if (isAuthenticated) {
    console.log("Chào mừng bạn! Bạn đã đăng nhập thành công.");
} else {
    console.log("Vui lòng đăng nhập để tiếp tục.");
}

Giải thích:

  • Nếu isAuthenticatedtrue, thông báo chào mừng sẽ hiển thị.
  • Nếu isAuthenticatedfalse, người dùng được yêu cầu đăng nhập.

Kết quả đầu ra (nếu đã đăng nhập):

Chào mừng bạn! Bạn đã đăng nhập thành công.
Ví dụ: Phân quyền người dùng
let role = "admin"; 

if (role === "admin") {
    console.log("Bạn có quyền truy cập vào trang quản trị.");
} else if (role === "editor") 
    console.log("Bạn có thể chỉnh sửa nội dung.");
} else if (role === "user") {
    console.log("Bạn có thể xem nội dung.");
} else {
    console.log("Vai trò không hợp lệ.");
}

Giải thích:

  • Nếu role"admin", người dùng có quyền truy cập trang quản trị.
  • Nếu role"editor", chỉ có thể chỉnh sửa nội dung.
  • Nếu role"user", chỉ có quyền xem nội dung.
  • Nếu vai trò không hợp lệ, thông báo lỗi sẽ hiển thị.

Kết quả đầu ra (nếu vai trò là "admin"):

Bạn có quyền truy cập vào trang quản trị.

Hiển thị giao diện tùy theo trạng thái

Câu lệnh điều kiện giúp hiển thị hoặc ẩn nội dung trên giao diện web dựa trên trạng thái của ứng dụng.

Ví dụ: Hiển thị menu theo trạng thái đăng nhập

let isLoggedIn = false;

console.log(isLoggedIn ? "Hiển thị menu người dùng" : "Hiển thị nút đăng nhập");

Giải thích:

  • Nếu isLoggedIntrue, hiển thị menu người dùng.
  • Nếu isLoggedInfalse, hiển thị nút đăng nhập.

Kết quả đầu ra (nếu chưa đăng nhập):

Hiển thị nút đăng nhập

Kiểm tra dữ liệu nhập vào (Form Validation)

Khi người dùng nhập thông tin vào biểu mẫu (form), cần kiểm tra tính hợp lệ trước khi gửi đi.

Ví dụ: Kiểm tra email hợp lệ

let email = "[email protected]";

if (!email) {
    console.log("Email không được để trống.");
} else if (!email.includes("@")) {
    console.log("Email không hợp lệ.");
} else {
    console.log("Email hợp lệ.");
}

Giải thích:

  • Nếu email rỗng, hiển thị thông báo lỗi.
  • Nếu không chứa ký tự "@", thông báo "Email không hợp lệ." xuất hiện.
  • Nếu email đúng định dạng, thông báo "Email hợp lệ." được hiển thị.

Kết quả đầu ra (nếu email hợp lệ):

Email hợp lệ.

Ví dụ: Kiểm tra mật khẩu mạnh

let password = "Abc123!";

if (password.length < 8) {
    console.log("Mật khẩu quá ngắn, cần ít nhất 8 ký tự.");
} else if (!/[A-Z]/.test(password)) {
    console.log("Mật khẩu phải chứa ít nhất một chữ hoa.");
} else if (!/[0-9]/.test(password)) {
    console.log("Mật khẩu phải chứa ít nhất một số.");
} else if (!/[!@#$%^&*]/.test(password)) {
    console.log("Mật khẩu phải chứa ít nhất một ký tự đặc biệt.");
} else {
    console.log("Mật khẩu mạnh.");
}

Giải thích:

  • Kiểm tra độ dài (>= 8 ký tự).
  • Kiểm tra xem có chứa chữ hoa, số và ký tự đặc biệt không.

Kết quả đầu ra (nếu mật khẩu "Abc123!" thiếu độ dài):

Mật khẩu quá ngắn, cần ít nhất 8 ký tự.

Kết bài

Câu lệnh điều kiện if, else, else if là một phần quan trọng trong JavaScript, giúp lập trình viên kiểm soát luồng thực thi của chương trình một cách linh hoạt và hiệu quả. Nhờ vào các câu lệnh này, chúng ta có thể kiểm tra điều kiện, xử lý dữ liệu, xây dựng các hệ thống phản hồi thông minh và tạo ra các ứng dụng tương tác tốt hơn.

Từ kiểm tra đăng nhập, phân quyền người dùng, xử lý biểu mẫu đến lập trình trò chơi, câu lệnh điều kiện đóng vai trò quan trọng trong mọi khía cạnh của lập trình. Việc sử dụng thành thạo if...else không chỉ giúp cải thiện chất lượng mã nguồn mà còn tối ưu hóa hiệu suất chương trình.

Trong các trường hợp có nhiều điều kiện phức tạp, lập trình viên có thể cân nhắc sử dụng switch để giúp mã nguồn gọn gàng hơn. Tiếp tục nắm vững và thực hành với các cấu trúc điều kiện sẽ giúp bạn trở thành một lập trình viên JavaScript chuyên nghiệp!

Bài viết liên quan

  • 2