【发布时间】:2021-11-19 14:18:36
【问题描述】:
在javaScript中会出现这种情况,我想知道为什么?
1 == {} //false
{} == 1 //throw a Error
【问题讨论】:
-
当语句以
{开头时,解析器会将其解释为块语句的开头,而不是对象初始化表达式。 -
谢谢你,但我还有另一个关于:
[] == [] //false和[] == ![] //true -
见 felix-kling.de/js-loose-comparison/#%5B%5D==%5B%5D 和 felix-kling.de/js-loose-comparison/#%5B%5D==!%5B%5D 。第一种情况很简单:两个不同的对象永远不相等。第二个有点复杂。查看链接。
标签: javascript