If else trong Javascript


Hôm nay ta sẽ tìm hiểu điều kiện trong javascript, nếu ta muốn kiểm tra tuổi, nếu tuổi bằng 100 tuổi thì in ra dòng thông báo "Your age is 100".
var age = 100;
if (age == 100) {
    console.log("Your age is 100"); // Your age is 100
}

age == 100 , nếu điều kiện đúng thì sẽ thực hiên in ra thông báo "your age is 100". age == 100 thì chỉ kiểm tra giá trị giống nhau hay không. Không kiểm tra loại dữ liệu,nên nếu ta viết

var age = 100;
if (age == "100") {
    console.log("Your age is 100"); // Your age is 100
}

Thì kết quả cũng giống như trên. Do age bằng 100 so sánh giá trị bằng 100 là được chứ không so sánh kiểu dữ liệu của age là Number, "100" là String.

Nếu muốn kiểm tra giá trị bằng nhau và kiểu dữ liệu giống nhau luôn thì dùng "==="

var age = 100;
if (age === 100) {
    console.log("Your age is 100"); // Your age is 100
}

Ngoài kiểm tra bằng nhau ta có những điều kiện khác như:

  1. "!=" , "!==" : khác nhau
  2. ">=" , ">==" : lớn hơn hoặc bằng
  3. "<=" , "<==" : nhỏ hơn hoặc bằng
  4. "!" : ngược lại

Ví dụ sau ta kiểm tra giá trị và kiểu dữ liệu luôn, giá trị thì bằng 100, kiểu thì khác nhau string và number.

var age = 100;
if (age !== '100') {
    console.log("Your age is not 100"); 
    // Your age is not 100
}

Vậy muốn kiểm tra 1 biến có được khai báo giá trị chua thì ta làm như sau:

var age = 12;

if (typeof age !== 'undefined') {
    console.log(age) // 12
} 

Kiểu dữ liệu của age có khác undefined không nếu đúng vậy có nghĩa là có dữ liệu , có nghĩa là điều kiện là đúng nên sẽ thực hiện in ra tuổi 12.

Vậy nếu age chưa khai báo thì ta thêm 1 điều kiện else nữa :

var age;

if (typeof age !== 'undefined') {
    console.log(age)

} else {
    // in ra age is undefineed
    console.log('age is undefined');
}

Nếu ta có nhiều điều kiện thì ta dùng như sau :

var age = 10;

if (age < 18) {
    console.log('Your age is less than 18'); 
    // in ra dòng này vì age = 10 nhỏ hơn 18

}else if (age >= 18 && age <= 30) {
    console.log('Your age is between 18 and 30');

} else {
    console.log('Your age is greater than 30 ');
}

Ở điều kiện thứ 2 ta dùng age >= 18 && age <= 30 có nghĩa là age phải lớn hơn hoặc bằng 18 và age phải nhở hơn hoặc bằng 30. Nếu ta muốn chỉ một trong 2 điều kiện trên thì dùng OR ("||").

Tóm lại :

  1. && : chỉ đúng khi cả 2 cùng đúng.
  2. || : chỉ đúng khi chỉ cần 1 trong 2 đúng là được.

Nếu trường hợp ta chỉ cần kiểm tra biến có giá trị true hay false, thay vì dùng if ..else, thì ta có thể dùng "Ternary operator" như sau:

var myBoolean = true;

var test = myBoolean? "It's True ": "It's False";
console.log(test); // It's True

Nếu giá trị là true thì thực hiện in ra "It's True". Nếu giá trị là false thì in ra "It's False".

Xem thêm ví dụ sau nhé:

var age = 1;

var test = age < 10? "your age < 10": "your age  > 10";
console.log(test);
// your age < 10

Như vậy ta đã tìm hiểu xong về điều kiện trong javascript rồi nhé ^_^.