Trong hướng dẫn này, bạn sẽ tìm hiểu về toán tử So sánh và toán tử lôgic với sự trợ giúp của các ví dụ.
Toán tử so sánh JavaScript
Toán tử so sánh so sánh hai giá trị và trả về giá trị boolean: hoặc true
hoặc false
. Các toán tử so sánh được sử dụng trong việc ra quyết định và các vòng lặp .
Operator | Decfscription | Example |
---|---|---|
== | Equal to: true if the operands are equal | 5==5; //true |
!= | Not equal to: true if the operands are not equal | 5!=5; //false |
=== | Strict equal to: true if the operands are equal and of the same type | 5==='5'; //false |
!== | Strict not equal to: true if the operands are equal but of different type or not equal at all | 5!=='5'; //true |
> | Greater than: true if the left operand is greater than the right operand | 3>2; //true |
>= | Greater than or equal to: true if the left operand is greater than or equal to the right operand | 3>=3; //true |
< | Less than: true if the left operand is less than the right operand | 3<2; //false |
<= | Less than or equal to: true if the left operand is less than or equal to the right operand | 2<=2; //true |
Ví dụ 1: Bằng toán tử
const a = 5, b = 2, c = 'hello';
// equal to operator
console.log(a == 5); // true
console.log(b == '2'); // true
console.log(c == 'Hello'); // false
==
đánh giá true
xem các toán hạng có bằng nhau hay không.
Lưu ý : Trong JavaScript, ==
là một toán tử so sánh, trong khi đó =
là một toán tử gán. Nếu bạn sử dụng nhầm =
thay vì ==
, bạn có thể nhận được kết quả không mong muốn.
Ví dụ 2: Không bằng Toán tử
const a = 3, b = 'hello';
// not equal operator
console.log(a != 2); // true
console.log(b != 'Hello'); // true
!=
đánh giá true
nếu các toán hạng không bằng nhau.
Ví dụ 3: Nghiêm ngặt ngang bằng với toán tử
const a = 2;
// strict equal operator
console.log(a === 2); // true
console.log(a === '2'); // false
===
đánh giá true
xem các toán hạng có bằng nhau và cùng kiểu hay không. Ở đây 2 và ‘2’ là những con số giống nhau nhưng kiểu dữ liệu khác nhau. Và ===
cũng kiểm tra kiểu dữ liệu trong khi so sánh.
Lưu ý : Sự khác biệt giữa ==
và ===
là:
==
đánh giá true
xem các toán hạng có bằng nhau hay không, tuy nhiên, chỉ ===
đánh giá true
nếu các toán hạng bằng nhau và cùng kiểu
Ví dụ 4: Nghiêm ngặt Không bằng Toán tử
const a = 2, b = 'hello';
// strict not equal operator
console.log(a !== 2); // false
console.log(a !== '2'); // true
console.log(b !== 'Hello'); // true
!==
đánh giá true
nếu các toán hạng hoàn toàn không bằng nhau. Nó hoàn toàn trái ngược với hoàn toàn bình đẳng ===
.
Trong ví dụ trên, 2 != '2'
cho true
. Đó là bởi vì các loại của chúng khác nhau mặc dù chúng có cùng giá trị.
Ví dụ 5: Lớn hơn Toán tử
const a = 3;
// greater than operator
console.log(a > 2); // true
>
đánh giá true
xem toán hạng bên trái có lớn hơn toán hạng bên phải hay không.
Ví dụ 6: Lớn hơn hoặc bằng toán tử
const a = 3;
// greater than or equal operator
console.log(a >= 3); //true
>=
đánh giá true
nếu toán hạng bên trái lớn hơn hoặc bằng toán hạng bên phải.
Ví dụ 7: Toán tử nhỏ hơn
const a = 3, b = 2;
// less than operator
console.log(a < 2); // false
console.log(b < 3); // true
<
đánh giá true
xem toán hạng bên trái có nhỏ hơn toán hạng bên phải hay không.
Ví dụ 8: Nhỏ hơn hoặc Bằng toán tử
const a = 2;
// less than or equal operator
console.log(a <= 3) // true
console.log(a <= 2); // true
<=
đánh giá true
nếu toán hạng bên trái nhỏ hơn hoặc bằng toán hạng bên phải.
Toán tử logic JavaScript
Toán tử logic thực hiện các phép toán logic: AND , OR và NOT .
Operator | Decfscription | Example |
---|---|---|
&& | Logical AND: true if both the operands/boolean values are true, else evaluates to false | true && false; // false |
|| | Logical OR: true if either of the operands/boolean values is true . evaluates to false if both are false | true || false; // true |
! | Logical NOT: true if the operand is false and vice-versa. | !true; // false |
Ví dụ 9: Toán tử logic AND
const a = true, b = false;
const c = 4;
// logical AND
console.log(a && a); // true
console.log(a && b); // false
console.log((c > 2) && (c < 2)); // false
&&
đánh giá true
nếu cả hai toán hạng đều là true
, các toán hạng khác đánh giá là false
.
Lưu ý: Bạn cũng có thể sử dụng các toán tử logic với các số. Trong JavaScript, 0 là false
và tất cả các giá trị khác 0 true
.
Ví dụ 10: Toán tử logic HOẶC
const a = true, b = false, c = 4;
// logical OR
console.log(a || b); // true
console.log(b || b); // false
console.log((c>2) || (c<2)); // true
||
đánh giá true
nếu một trong các toán hạng là true
. Nếu cả hai toán hạng đều là false
, kết quả là false
.
Ví dụ 11: Toán tử logic NOT
const a = true, b = false;
// logical NOT
console.log(!a); // false
console.log(!b); // true
!
đánh giá true
nếu toán hạng là false
và ngược lại.