JS的真值阵营图

JS的真值阵营图



形式纯粹派

必须同是原始值

形式兼容派

同是引用值也可以

形式自由派

为什么要区分引用值和原始值

定义纯粹派

必须要值相同

true == true
Boolean(true) == Boolean(true)
true == Boolean(true)

定义兼容派

看起来差不多就可以啦

'0' == 0
String('0') == Number(0)
[0] == 0

定义自由派

看起来不一样也没什么问题

null == undefined
[[]] == Boolean(false)
[[]] == ''