Loose equality là gì?

Noun Javascript
loose equality operator

Trong Javascript, toán tử loose equality "==" cho phép chúng ta so sánh hai hoặc nhiều toán hạng (operand) bằng cách chuyển đổi (conversion) giá trị của chúng thành một kiểu dữ liệu (type) chung trước và sau đó kiểm tra sự bằng nhau giữa chúng giống như "===".

Toán tử loose equality là đối xứng: A == B luôn có ngữ nghĩa giống hệt B == A cho bất kỳ giá trị nào của A và B (ngoại trừ thứ tự chuyển đổi được áp dụng). undefined và null là loosely equal, nghĩa là undefined == null là true và null == undefined là true.

Bên dưới là code ví dụ mẫu:


const num = 0;
const big = 0n;
const str = '0';
const obj = new String('0');

console.log(num == str); // true
console.log(big == num); // true
console.log(str == big); // true

console.log(num == obj); // true
console.log(big == obj); // true
console.log(str == obj); // true


Learning English Everyday