在javascript tripple equals 中,首先检查什么?类型或价值?
In javascript tripple equals, what is checked first? type or value?
如果我尝试使用三等号比较 javascript 中的两个对象,
object1 === object2
它同时检查了类型和值。
我的问题是,先测试哪个?类型或值?
先检查类型:
https://www.ecma-international.org/ecma-262/6.0/#sec-strict-equality-comparison
7.2.13 Strict Equality Comparison
The comparison x === y, where x and y are values, produces true or false. Such a comparison is performed as follows:
- If Type(x) is different from Type(y), return false.
毕竟,如果你事先不知道两个变量的类型是什么,比较它们的“值”在没有强制转换的情况下会有点棘手(当然,===
禁止强制转换)。
如果我尝试使用三等号比较 javascript 中的两个对象,
object1 === object2
它同时检查了类型和值。
我的问题是,先测试哪个?类型或值?
先检查类型:
https://www.ecma-international.org/ecma-262/6.0/#sec-strict-equality-comparison
7.2.13 Strict Equality Comparison
The comparison x === y, where x and y are values, produces true or false. Such a comparison is performed as follows:
- If Type(x) is different from Type(y), return false.
毕竟,如果你事先不知道两个变量的类型是什么,比较它们的“值”在没有强制转换的情况下会有点棘手(当然,===
禁止强制转换)。