Làm cách nào để sử dụng === trong JavaScript?

Bây giờ, mối quan tâm chính của chúng ta là tìm hiểu sự khác biệt giữa các toán tử '==' và '===' mà javascript cung cấp, mặc dù chúng trông giống nhau nhưng chúng rất khác nhau

  • Toán tử JavaScript '=='. Trong Javascript, toán tử ‘==’ còn được gọi là toán tử đẳng thức lỏng lẻo, chủ yếu được sử dụng để so sánh hai giá trị ở cả hai phía rồi trả về true hoặc false. Toán tử này chỉ kiểm tra đẳng thức sau khi chuyển đổi cả hai giá trị thành một loại chung i. e loại cưỡng chế

Ghi chú. Ép buộc loại có nghĩa là hai giá trị chỉ được so sánh sau khi cố gắng chuyển đổi chúng thành cùng một loại. Hãy xem xét tất cả các giá trị trong đó toán tử '==' sẽ trả về true

Giá trị Boolean của chữ trong quá trình so sánh

Thật

  • '0'
  • 'false' // false được gói trong chuỗi
  • []
  • {}
  • chức năng[]{}

Sai

  • ” hoặc “” // chuỗi rỗng
  • sai
  • 0
  • vô giá trị
  • không xác định
  • NaN // không phải là số

ví dụ 1.  

jav




false
false
false
false
5

false
false
false
false
6
false
false
false
false
7

false
false
false
false
6
false
false
false
false
9

false
false
false
false
6
false
false
false
false
0
false
false
false
false
1
false
false
false
false
2

false
false
false
false
6
false
false
false
false
4
false
false
false
false
5
false
false
false
false
6
false
false
false
false
5
false
false
false
false
2

false
false
false
false
6
false
false
false
false
4
true
true
true
1
true
true
true
2

false
false
false
false
6
false
false
false
false
4
true
true
true
5
true
true
true
6

false
false
false
false
6
false
false
false
false
4
true
true
true
9
false
false
false
false
60

false
false
false
false
61

đầu ra. Trong đoạn mã trên, khi chúng ta so sánh 21 với '21', javascript sẽ chuyển đổi '21' thành giá trị số là 21 và do đó chúng ta nhận được giá trị true, điều tương tự cũng xảy ra khi chúng ta cố kiểm tra xem 'true == 1' .  

Trường hợp của [null == undefined] là đặc biệt vì khi chúng ta so sánh các giá trị này, chúng ta nhận được true. Cả null và undefined đều là giá trị sai và chúng đại diện cho giá trị 'trống' hoặc không xác định trong js, do đó phép so sánh với toán tử '==' trả về true

false
false
false
false
8

Bây giờ, hãy xem xét tất cả các giá trị mà toán tử '==' sẽ trả về false

ví dụ 2. Trong mã này khi chúng ta so sánh null với false, chúng ta nhận được false, vì null là kiểu dữ liệu nguyên thủy nên nó không bao giờ có thể bằng giá trị boolean, mặc dù chúng thuộc cùng một nhóm false

jav




false
false
false
false
5

false
false
false
false
63
false
false
false
false
7

false
false
false
false
63
false
false
false
false
66

false
false
false
false
63
false
false
false
false
0____169
false
false
false
false
2

false
false
false
false
63
false
false
false
false
4
true
true
true
1
true
true
true
6

false
false
false
false
63
false
false
false
false
4
true
true
true
9
false
false
false
false
6
true
true
true
5
false
false
false
false
2

false
false
false
false
61

đầu ra

false
false
false
false

Toán tử JavaScript '==='. Còn được gọi là toán tử đẳng thức nghiêm ngặt, nó so sánh cả giá trị và loại, đó là lý do tại sao có tên là "bình đẳng nghiêm ngặt"

ví dụ 1. Hãy xem một số mã trong đó toán tử '===' sẽ trả về true

jav




false
false
false
false
61

_______56____564

false
false
false
false
6
false
false
false
false
4
false
false
false
false
67
false
false
false
false
68
false
false
false
false
67
false
false
false
false
2

false
false
false
false
6
false
false
false
false
4
true
true
true
1
false
false
false
false
68
true
true
true
1
false
false
false
false
2

_______56____578

false
false
false
false
61

đầu ra

true
true
true

ví dụ 2. Chỉ cần kiểm tra các loại và giá trị ở cả hai bên và sau đó chỉ cần in ra giá trị boolean đúng hoặc sai. Một số ví dụ mà nó sẽ trả về false

jav




false
false
false
false
5

_______56____564

false
false
false
false
6
false
false
false
false
4
true
true
true
1
false
false
false
false
66

false
false
false
false
6
false
false
false
false
4
true
true
true
1
false
false
false
false
68
false
false
false
false
91
false
false
false
false
2

false
false
false
false
6
false
false
false
false
94____595
false
false
false
false
2

false
false
false
false
61

đầu ra

false
false
false
false
6

Vui lòng xem qua bài viết về Sự khác biệt giữa gấp đôi bằng và gấp ba bằng JavaScript để so sánh các toán tử '===' và '=='

Cách === hoạt động trong JavaScript?

Bình đẳng nghiêm ngặt bằng cách sử dụng === . Cuối cùng, nếu cả hai giá trị đều là số, thì chúng được coi là bằng nhau nếu cả hai đều không phải là NaN và có cùng giá trị hoặc nếu một giá trị là +0 và một giá trị là -0. If the values have the same type, are not numbers, and have the same value, they're considered equal. Finally, if both values are numbers, they're considered equal if they're both not NaN and are the same value, or if one is +0 and one is -0 .

Tôi có nên sử dụng == hoặc === trong JavaScript không?

= Vs == VS === trong JavaScript . == trong JavaScript được dùng để so sánh hai biến, nhưng nó bỏ qua kiểu dữ liệu của biến . === được dùng để so sánh hai biến, nhưng toán tử này cũng kiểm tra kiểu dữ liệu và so sánh hai giá trị.

== và === có giống nhau không?

Toán tử == kiểm tra xem hai giá trị có bằng nhau không. Các. = toán tử kiểm tra xem hai giá trị có bằng nhau không . Nó còn được gọi là toán tử đẳng thức lỏng lẻo vì nó kiểm tra đẳng thức trừu tượng, i. e. , nó có xu hướng chuyển đổi kiểu dữ liệu của toán hạng để thực hiện phép so sánh khi hai toán hạng không cùng kiểu dữ liệu.

Tôi có nên luôn sử dụng === trong JavaScript không?

Ví dụ: "1" == true hoặc "" == 0 sẽ trả về true. Để biết thêm các đặc thù, hãy xem Bảng bình đẳng Javascript. Tóm lại, luôn sử dụng === ở mọi nơi trừ khi bạn cần ép kiểu [trong trường hợp đó, hãy sử dụng ==. ]

Chủ Đề