【发布时间】:2017-06-03 23:04:49
【问题描述】:
我有两个变量;
var x = '23b';
var y = '23a';
现在我有一个逻辑可以比较,如果它们相等,我想执行一些操作
注意:两者比较时,如果两者都是 NaN,则它们应该通过条件
我试过用这个
if (Number(x) == Number(y))
即使两者都是 NaN,这也会返回 false
【问题讨论】:
标签: javascript html numbers
我有两个变量;
var x = '23b';
var y = '23a';
现在我有一个逻辑可以比较,如果它们相等,我想执行一些操作
注意:两者比较时,如果两者都是 NaN,则它们应该通过条件
我试过用这个
if (Number(x) == Number(y))
即使两者都是 NaN,这也会返回 false
【问题讨论】:
标签: javascript html numbers
为什么要编号?
只需使用 parseInt
if (parseInt(x, 10) == parseInt(y, 10))
NaN 上的行为具有误导性
只是安慰这个 NaN == NaN
你会得到 false 的值
【讨论】:
您可以使用isNAN
var x = '23b';
var y = '23a';
if(isNAN(x) && isNAN(y))
alert("both are NAN");
【讨论】:
if(isNaN(x) && isNaN(y))
var x = '23b';
var y = '23a';
console.log(parseFloat(x)===parseFloat(y));
【讨论】:
尝试使用Object.is()
var x = '23b';
var y = '23a';
Object.is(Number(x),Number(y)); => true
【讨论】: