===
是JavaScript中的严格相等运算符。它用于比较两个值是否完全相等,不仅比较值,还比较类型。这与 ==
(相等运算符)不同,后者在比较之前会进行类型转换。
示例
1. 比较相同类型的值
console.log(5 === 5); // true
console.log('hello' === 'hello'); // true
console.log(true === true); // true
2. 比较不同类型的值
console.log(5 === '5'); // false
console.log(0 === false); // false
console.log(null === undefined); // false
3. 比较对象
let obj1 = {a: 1};
let obj2 = {a: 1};
let obj3 = obj1;console.log(obj1 === obj2); // false (不同的对象引用)
console.log(obj1 === obj3); // true (相同的对象引用)
4. 比较 NaN
console.log(NaN === NaN); // false (NaN 不等于任何值,包括它自己)
结论
使用 ===
可以避免一些由于类型转换导致的意外行为,因此在大多数情况下,建议使用 ===
而不是 ==
。