如何比较一个字符串一个整数在javascript中工作?

时间:2016-08-02 15:15:49

标签: javascript compare

我刚刚找到一段代码,在其中将字符串与这样的整数进行比较:

var result = "text" > 127;

并且此行代码的结果为false。我也尝试将其更改为等于或小于,结果仍然是假的:

var result = "text" === 127;
var result = "text" < 127;

如果字符串和数字总是返回false,那么比较字符串和数字的含义是什么,或者在任何情况下这是真的?

1 个答案:

答案 0 :(得分:1)

当您将字符串与数字进行比较时,字符串将转换为数字,但在本例中为"text",结果为NaN(translate不是数字)。始终结果为false,因为NaN不是要比较的数字。

验证:

var n1 = Number("text");
console.log(n1); //show NaN

因此...

var result = "text" > 127;

等于

var result = NaN > 127; //result false always with any compare

但是,如果文本是一个可以转换的数字

var result = "00999" > 127; //result true, because Number("00999") == 999