JavaScript面试题:请解释js中的相等判断
JavaScript中的相等判断有严格判断和带隐式转换的判断两种:
- 严格判断(strict comparision): 比如
===
,比较的时候不会隐式转换类型; - 抽象判断(abstract comparasion):比如
==
,比较的时候会隐式转换类型。
var a = "42";
var b = 42;
a == b; // true
a === b; // false
复制代码
一些简单的规则:
- 如果两边都是布尔类型的值,使用
===
; - 如果两边是0,
""
,[]
,使用===
; - 所有其它类型,使用
==
是安全的。而且在很多情况下会简化代码、增加可读性。
作者:Fundebug
来源:掘金
THE END