Computer >> Máy Tính >  >> Lập trình >> Javascript

Sự khác biệt giữa toán tử ==và ===trong JavaScript

Trong JavaScript, các dấu bằng đôi và ba được sử dụng để so sánh giữa hai toán hạng. Sự khác biệt giữa cả hai giá trị bằng là:

Sr. Không. Phím Dấu bằng kép (==) Ba Dấu bằng (===)
1 Đặt tên Double =được đặt tên là Toán tử bình đẳng . Bộ ba bằng được đặt tên là Toán tử nhận dạng / bình đẳng nghiêm ngặt .
2 So sánh Double =được dùng làm Chuyển đổi kiểu sự chuyển đổi Triple =được sử dụng làm Chuyển đổi nghiêm ngặt mà không thực hiện bất kỳ chuyển đổi nào trong toán hạng.
3 Cú pháp Double =có cú pháp để so sánh là (a ==b) Ba dấu bằng có cú pháp để so sánh là (a ===b)
4 Triển khai Double =trước tiên chuyển đổi các toán hạng thành cùng một kiểu và sau đó so sánh, tức là phép so sánh sẽ thực hiện khi cả hai toán hạng đều thuộc cùng một kiểu. Đây còn được gọi là so sánh kiểu cưỡng chế. Mặt khác, ba dấu bằng không thực hiện bất kỳ kiểu chuyển đổi nào trước khi so sánh và chỉ trả về true nếu kiểu và giá trị của cả hai toán hạng hoàn toàn giống nhau.

Ví dụ về ==so với ===

Equals.jsp

var a = true;
var b = 1;
var c = true;
console.log (a == b); // first convert 1 into boolean true then compare
console.log (a === c); // both are of same type no conversion required simple compare.
console.log (a === b); // no conversion performed and type of both operands are not of same type so expected result is false.

Đầu ra

true
true
false