theo dõi

Gần nhất :

Thống kê câu hỏi

Chuyên mục : Lập trình
Topic : JavaScript
Hỏi lúc:
Lượt xem: 3,103

Sự khác nhau giữa toán tử (== vs ===) sử dụng so sánh trong JavaScript?

Lê An Nam Lê An Nam
 20  01  00
20 bình chọn hữu ích bởi Đặng Sỹ Anh, Lê Bình Ðạt Trịnh Phước An ... (tất cả)
3,103 xem 12 theo dõi 20 hữu ích hỏi –

Bạn biết ai đó có thể trả lời câu hỏi này?. Bạn có thể giúp đỡ bằng cách tìm những người giỏi nhất:

user user user user user

Đỗ Hạnh Hoa Đỗ Hạnh Hoa
 12  00  02
09 bình chọn hữu ích bởi Đỗ Thanh Nguyên, Hoàng Nhật Quang Hoàng Thế Anh ... (tất cả)

Sử dụng toán tử "=="

true == 1; //true, vì 'true' được chuyển thành 1 và sau đó so sánh
"2" == 2;  //true, vì "2" được chuyển thành 2 và sau đó so sánh

Sử dụng toán tử "==="

true === 1; //false
"2" === 2;  //false

Điều này là bởi vì các toán tử bình đẳng == thực thi ép buộc định dạng kiểu dữ liệu, có nghĩa là thông dịch ngầm sẽ để chuyển đổi các giá trị trước khi so sánh.

Mặt khác, toán tử === không thực thi ép buộc định dạng, và do đó không chuyển đổi các giá trị khi so sánh.

2,831 xem 09 hữu ích trả lời –
Trịnh Thu Hằng Trịnh Thu Hằng
 05  00  01
05 bình chọn hữu ích bởi Đặng Ngọc Hiền, Phan Bảo Trâm Lý Phúc Sinh ... (tất cả)

Các toán tử === được gọi là toán tử so sánh nghiêm ngặt, nó khác với toán tử ==.

Giả sử có 2 giá trị var a, b

Đối với "a == b" để đánh giá kết quả là true thì a và b cần phải có các giá trị như nhau.

Trong trường hợp của "a === b" a và b phải có giá trị như nhau và cũng cùng kiểu thì mới có thể có kết quả true.

Xem ví dụ sau đây:

var a = 1;
var b = "1";

if (a == b) //true, vì a, b đều có giá trị 1
{
    alert("a == b");
}

if (a === b) //false, vì a vs b khác kiểu
{
    alert("a === b");
}

Tóm tắt: bằng cách sử dụng toán tử == có thể đánh giá true trong các trường hợp. Nếu không bạn có thể sử dụng các toán tử === sẽ được an toàn hơn trong các trường hợp so sánh cùng kiểu

2,828 xem 05 hữu ích trả lời –
Trần Khả Hân Trần Khả Hân
 06  00  03
02 bình chọn hữu ích bởi Hoàng Tuyết Trinh Đỗ Lệ Nghi

=== toán tử này kiểm tra các giá trị và kiểu của giá trị

== chỉ cần kiểm tra các giá trị

img

Bạn có thể kiểm tra qua đoạn mã:

<script>
function onPageLoad()
{
    var x = "5";
    var y = 5;
    alert(x === 5);
    alert(x == 5)
};
</script>

Các giá trị alert sẽ lần lượt là falsetrue

2,825 xem 02 hữu ích trả lời –