为什么==与===不同?

时间:2016-08-23 15:17:57

标签: javascript

为什么javascript将"xy" == new String("xy")视为true,但"xy" === new String("xy")为false?。

我已阅读https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Expressions_and_Operators,但仍感到困惑

2 个答案:

答案 0 :(得分:4)

typeof "xy"

是"字符串"

typeof new String("xy")

是"对象"

===比较值和类型

==转换类型,然后只比较值

答案 1 :(得分:0)

==运算符只是比较值,===比较值和类型。因此,"xy"的类型为stringnew String()的类型为对象。这就是为什么你看到这两个比较之间的区别