在JavaScript中使用===进行字符串比较是否有意义?

时间:2012-07-27 13:40:12

标签: javascript

虽然很清楚如何使用===运算符数字非常有用(0nullundefined都是假值,可能导致混淆),我不确定使用===是否有好处字符串比较。

我的一些队友使用此运算符进行所有比较,但它确实有意义吗?是否至少会有一些轻微的性能影响?

2 个答案:

答案 0 :(得分:9)

如果您知道类型相同,那么=====之间的算法没有区别。

那就是说,当我看到==时,我认为我正在使用它来进行类型强制,这使我停下来分析代码。

当我看到===时,我知道没有强制意图,所以我不需要再考虑一下。

换句话说,如果我打算,我只会使用==来进行某种类型的强制。

答案 1 :(得分:-2)

始终使用===进行JavaScript比较被认为是一种好习惯。由于JavaScript是一种动态语言,因此您认为两个字符串可能是不同类型的变量。

请考虑以下事项:

var a = "2", b = 2;
a == b  // true
a === b // false

在这种情况下保证false结果的唯一方法是在比较这两个值时使用===