javascript - Number.isNaN 在 IE 中不存在

标签 javascript internet-explorer numbers nan

为什么IE不支持Number.isNaN函数?我不能使用简单的 isNan 而不是 Number.isNaN 因为这些函数是不同的! 例如:

Number.isNaN("abacada") != isNaN("abacada") //false != true

我需要抽象字符串和数字并检查,是否有一些 var 确实包含 NaN(我的意思是 NaN 常量,但不是像字符串那样的数字值)。

someobj.someopt = "blah"/0;
someobj.someopt2 = "blah";
someobj.someopt3 = 150;
for(a in someobj) if(Number.isNaN(someobj[a])) alert('!');

该代码应显示警报 1 次。但是如果我将 Number.isNaN 更改为 isNaN,它会提醒 2 次。有区别。

可能存在一些替代功能?

最佳答案

Why does not IE support the Number.isNaN function?

这对于 Stack Overflow 来说有点离题,但根据 the MDN page for Number.isNaN ,它没有在任何标准中定义——它只在 ECMAScript 6 的规范草案中——而且 Internet Explorer 不是唯一不支持它的浏览器。

May be there is some alternative function exists?

不是真的,但你可以很容易地定义一个:

function myIsNaN(o) {
    return typeof(o) === 'number' && isNaN(o);
}

或者如果您愿意:

function myIsNaN(o) {
    return o !== o;
}

关于javascript - Number.isNaN 在 IE 中不存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26962341/

相关文章:

javascript - 为什么 mediaelements.js 无法在 Internet Explorer 8 中缩放 YouTube 视频?

time - Lua中数字的最大值是多少?

java - 通过在数字之间加“5”来返回最大可能的整数?

c - 为什么我无法正确存储/检索 11 位长号码

Javascript 转到 ID 减去一些像素

javascript - 如何构建 create-react-app 让客户无法以有组织的方式查看代码

javascript - 为什么不使用 mouseup 事件目标而不是 "old school"拖放的位置?

javascript - Mysql 查询检索帖子并根据特定日期间隔进行过滤

javascript - 嵌套内容可编辑的按键事件 (jQuery)

c# - Edge 浏览器 WebDriver 故障