首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >检查asm.js代码中的NaNs

检查asm.js代码中的NaNs
EN

Stack Overflow用户
提问于 2014-02-26 10:24:36
回答 2查看 139关注 0票数 3

如何有效地签入asm.js代码,浮点值是否为NaN?

原则上工作的一种方法是将全局isNaN JavaScript函数作为外部函数导入asm.js模块。但是,由于调用外接函数的代价很高,所以这不会产生最佳代码。

与值NaN (它是标准库的一部分)相比,没有选择,因为NaN与另一个NaN的比较通过JavaScript语义总是产生false。

检查堆上的位也是不可选的,因为没有指定endianess。

为什么isNaN不是asm.js标准库的一部分?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-02-26 10:26:09

NaN的这个属性通常用于标识它:

代码语言:javascript
复制
var isNaN = a!=a; 

来自维基百科

等式和不等式谓词是非信令的,因此x=x返回false可以用来测试x是否是一个安静的NaN。

票数 3
EN

Stack Overflow用户

发布于 2014-02-26 10:26:01

代码语言:javascript
复制
if (value !== value) {
    // Definitely NaN
}

你可以把它做成这样的函数

代码语言:javascript
复制
function isNaN(inputValue) {
    return inputValue !== inputValue;
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22038416

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档