用Javascript比较字符串

时间:2014-12-05 03:32:57

标签: javascript

请参阅以下比较:

("a" == "a")
true

(/a/ == /a/)
false

为什么我使用以下表达式得到不同的结果?

修改

现在我只使用==并仍然得到相同的结果。

2 个答案:

答案 0 :(得分:6)

文字/a/不是字符串,它是正则表达式对象。没有两个对象彼此===

答案 1 :(得分:4)

undefinednullNumbersStrings文字和Booleans是javascript中的值类型。

因此,它们将与进行比较,而不是RegExp(或任何其他对象),这是一个对象,其中比较是基于参考。因此"a" == "a"将返回true,因为 相同,但/a/ == /a/将返回{{1}因为引用不同。