这可能只是JavaScript的一个奇怪的怪癖,但我很好奇,如果有人知道为什么发生这种情况:为什么对象大于/小于或等于不同的对象?
({} <= {}) => true
({} >= {}) => true
({} == {}) => false
({} === {}) => false
({} > {}) => false
({} < {}) => false
为什么前两个假设所有其他人都是假的?
我认为它可以比较前铸造的对象号码,但...
Number({}) >= Number({}) => false
类型转换的规则在'=='和'<='/'> ='之间是不同的。 – Pointy
你可以阅读[this](http://www.ecma-international.org/ecma-262/5.1/#sec-11.8.5)关于大于和小于,[this](http:/ /www.ecma-international.org/ecma-262/5.1/#sec-11.9.3)关于'=='。 – Pointy