==和===
约 209 字
==和===
相等操作符存在隐式类型转换,在比较前会先进行类型转换再进行比较
例如
比较字符串和布尔值,会转换为数值再比较
比较基本类型和引用类型,会调用引用类型的valueOf获取其原始值再进行比较
比较引用类型,会比较其引用指向的内存地址是否相同
比较null和undefined会返回true
如果比较存在NaN,则会返回false
全等操作符不存在类型转换,它是严格相等的,既要类型相同,也要值相同
全等操作符因为在使用时存在隐式类型转换,可能暗含一些漏洞,所以在比较null和undefined时适合使用相等,其余情况下适合使用全等