JavaScript 中的相等性判断-3种方式
- 相等性判断-双等于号(==)
- 相等性判断-三等于号(===)
- 相等性判断-Object.is()
1:非严格相等 ==
使用非严格相等比较时会自动转换:
let a = "10";
let b = 10;
console.log(a==b);
output:true
此时的数字10将自动转换为10的字符串。
2:严格相等 ===
严格相等运算符比较两个值是否相同,并且两个比较值在比较之前没有隐式转换:
let a = "10";
let b = 10;
console.log(a===b);
output:false
数字10和字符串10是不同的类型,因此它们的值是不同的。
3:Object.is()
类似于严格的规范===,但在处理某些特殊情况时更有用。
let a = NaN;
let b = NaN;
console.log(Object.is(a,b));
output:true
避免了使用isNaN()函数。