Các toán tử so sánh và logic được sử dụng để kiểm tra true
hoặc false
.
Toán tử so sánh
Các toán tử so sánh được sử dụng trong các câu lệnh logic để xác định sự bình đẳng hoặc khác biệt giữa các biến hoặc giá trị.
Cho rằng x = 5
, bảng bên dưới giải thích các toán tử so sánh:
Làm thế nào có thể sử dụng nó
Các toán tử so sánh có thể được sử dụng trong các câu lệnh có điều kiện để so sánh các giá trị và thực hiện hành động tùy thuộc vào kết quả:
if [tuổi 1] is true
||
hoặc
[x == 5 || y == 5] là sai
!!
Thí dụ
Thử nó
&&
và
When comparing a string with a number, JavaScript will convert the string to a number when doing the comparison. An empty string converts to 0. A non-numeric string converts to NaN
which is always false
.
[x == 5 || y == 5] là sai | !! | Thử nó " |
|| | !! | Thử nó " |
|| | hoặc | Thử nó " |
|| | hoặc | Thử nó " |
|| | hoặc | Thử nó " |
|| | hoặc | Thử nó " |
|| | !! | Thử nó " |
|| | hoặc | Thử nó " |
||
hoặc
[x == 5 || y == 5] là sai
if [isNaN[age]] {
voteable = "Input is not a number";
} else {
voteable = [age < 18] ? "Too young" : "Old enough";
}
!!
không phải
! [x == y] là đúng
Thí dụ
Thử nó
let text = "missing";
let result = name ?? text;
!!
không phải
! [x == y] là đúng | Nhà điều hành có điều kiện [ternary] | JavaScript cũng chứa một toán tử có điều kiện gán giá trị cho một biến dựa trên một số điều kiện. | Cú pháp | variablename = [điều kiện]? Value1: value2 & nbsp; |
Nếu tuổi biến là một giá trị dưới 18, giá trị của biến số có thể bỏ phiếu sẽ là "quá trẻ", nếu không giá trị của có thể bỏ phiếu sẽ là "đủ tuổi". | Nếu tuổi biến là một giá trị dưới 18, giá trị của biến số có thể bỏ phiếu sẽ là "quá trẻ", nếu không giá trị của có thể bỏ phiếu sẽ là "đủ tuổi". | So sánh các loại khác nhau | So sánh dữ liệu của các loại khác nhau có thể cho kết quả bất ngờ. | So sánh dữ liệu của các loại khác nhau có thể cho kết quả bất ngờ. |
Khi so sánh một chuỗi với một số, JavaScript sẽ chuyển đổi chuỗi thành một số khi thực hiện so sánh. Một chuỗi trống chuyển đổi thành 0. Một chuỗi không phải là số chuyển đổi thành NaN
luôn luôn là false
.
Trường hợp
Thí dụ
Thử nó
const car = {type:"Fiat", model:"500", color:"white"};
// Ask for car name:
document.getElementById["demo"].innerHTML = car?.name;
!!
không phải
! [x == y] là đúng | Nhà điều hành có điều kiện [ternary] | JavaScript cũng chứa một toán tử có điều kiện gán giá trị cho một biến dựa trên một số điều kiện. | Cú pháp | variablename = [điều kiện]? Value1: value2 & nbsp; |
Nếu tuổi biến là một giá trị dưới 18, giá trị của biến số có thể bỏ phiếu sẽ là "quá trẻ", nếu không giá trị của có thể bỏ phiếu sẽ là "đủ tuổi". | Nếu tuổi biến là một giá trị dưới 18, giá trị của biến số có thể bỏ phiếu sẽ là "quá trẻ", nếu không giá trị của có thể bỏ phiếu sẽ là "đủ tuổi". | So sánh các loại khác nhau | So sánh dữ liệu của các loại khác nhau có thể cho kết quả bất ngờ. | So sánh dữ liệu của các loại khác nhau có thể cho kết quả bất ngờ. |
x = 5, x === 5
x = 5, x === "5"
!== freetuts.net, không được copy dưới mọi hình thức.
Các toán tử so sánh được sử dụng trong các câu lệnh logic để xác định xem giá trị của biến này có bằng, lớn hơn, nhỏ hơn .vv. giá trị của biến kia hay không.
== | so sánh bằng giá trị | x = 5, x == 8 x = 5, x == 5 Bài viết này được đăng tại [free tuts .net] x = 5, x == "5" | False True True | DEMO DEMO DEMO |
== | so sánh bằng giá trị | x = 5, x == 8 x = 5, x == 5 | True False | DEMO DEMO |
== | so sánh bằng giá trị | x = 5, x == 8 | x = 5, x == 5 | Bài viết này được đăng tại [free tuts .net] |
== | so sánh bằng giá trị | x = 5, x == 8 x = 5, x == 5 Bài viết này được đăng tại [free tuts .net] | False True True | DEMO DEMO DEMO |
== | so sánh bằng giá trị | x = 5, x == 8 | x = 5, x == 5 | Bài viết này được đăng tại [free tuts .net] |
x = 5, x == "5" | False | True | === | Bài viết này được đăng tại [free tuts .net] |
x = 5, x == "5" | False | True | === | Bài viết này được đăng tại [free tuts .net] |
x = 5, x == "5" | False | True | x = 5, x == 5 | Bài viết này được đăng tại [free tuts .net] |
x = 5, x == "5"
False
Ví dụ
if [score < 50] result = "Bad"; if [score > 50] result = "Good";
True
===
x = 5, x === 5 | x = 5, x === "5" | !== | x = 5, x == 5 | Bài viết này được đăng tại [free tuts .net] |
x = 5, x == "5" | False | True | x = 5, x == 5 | Bài viết này được đăng tại [free tuts .net] |
x = 5, x == "5" | False | True | x = 5, x == 5 | Bài viết này được đăng tại [free tuts .net] |
x = 5, x == "5"
False
True:
var skill = [score > 50] ? "good":"bad";7
var skill = [score > 50] ? "good":"bad";
===
Comparing Different Types
Các phép so sánh đối với các kiểu dữ liệu khác nhau có thể trả về những kết quả không theo ý muốn.
Khi so sánh một chuỗi với một số, chuỗi sẽ được chuyển thành kiểu số và tiến hành so sánh. Một chuỗi rỗng sẽ được chuyển thành 0, một chuỗi không thể chuyển thành kiểu số sẽ được chuyển thành NaN, các phép so sánh với NaN sẽ luôn trả về False.
10 < 99 | True | DEMO |
10 < "99" | True | DEMO |
10 < "99" | 10 > "ten" | DEMO |
10 < "99" | 10 > "ten" | DEMO |
10 < "99" | 10 > "ten" | DEMO |
10 < "99" | True | DEMO |
10 < "99" | 10 > "ten" | DEMO |
10 < "99" | 10 > "ten" | DEMO |
10 < "99"
var x = "10"; var y = "2"; x = Number[x]; y = Number[y]; content = [x > y] ? 'Đúng' : 'Sai';
10 > "ten"
False
- 10 < "ten"
- 10 == "ten"
- "10" < "2"