JavaScript如何将数字与字符串进行比较?

时间:2013-09-27 13:54:43

标签: javascript comparison comparison-operators

我知道===的含义:它会检查操作数是否相同,所以

  • 1 === '1'会提供false
  • 1 == '1'将提供true

typeof 1numbertypeof '1'string,那么JavaScript如何比较1 == '1'?有没有转换?如果是的话,哪些?

3 个答案:

答案 0 :(得分:3)

如果类型是数字和字符串,

JavaScript会将字符串转换为数字。

Annotated ECMAScript 5.1

  

比较x == y,其中x和y是值,产生true或   假。这样的比较如下进行:

     

...

     

5。如果Type(x)是Number而Type(y)是String,则返回结果   比较x == ToNumber(y)。   6.如果Type(x)是String而Type(y)是   数字,返回比较结果ToNumber(x)== y。

答案 1 :(得分:0)

您可以1 == parseInt("1")将字符串解析为整数。

答案 2 :(得分:0)

使用String()

在进行比较之前,它会将输入转换为字符串。

示例:

var test1= 1;
var test2= "1";

var answer = String(test1) === String(test2);

在这种情况下,答案将是正确的。