如果我尝试使用三等号比较javascript中的两个对象,
object1 === object2
它同时检查了类型和值。
我的问题是,哪个首先被测试?类型或值?
答案 0 :(得分:1)
首先检查类型:
https://www.ecma-international.org/ecma-262/6.0/#sec-strict-equality-comparison
7.2.13严格的平等比较
比较x === y(其中x和y是值)产生true或false。这样的比较如下:
- 如果Type(x)与Type(y)不同,则返回false。
毕竟,如果您事先不知道两个变量的类型,那么在没有强制的情况下比较它们的“值”会有些棘手(当然,===
禁止这样做)。