首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Under the Hood: NaN of JS

同时需要注意的是,NaN 只会出现在浮点类型中,而不会出现在 int 类型里(当然 JS 并没有这个概念) 什么意思?用你熟悉的任何支持 int 和 double 两种类型的语言(比如 C)。...在保证它不会偷偷做隐式类型转换的情况下,分别用 int 和 double 打印出 sqrt(-1), 你就能发现只有在 double 的类型下才能看到 NaN 出现,而 int 呢?...nan = *(double *)(bits); output(nan); free(bits); return nan; } 其中 output 是一个封装,用来输出任意一个 double...比如我们在 JS 中可以使用类似于 NaN+1,NaN+'123' 的操作,还不会报错。 而 Signaling NaN 就是一个“爆脾气”。...在 Compile Time,编译器如果在代码中碰到了 NaN 常量,就会自动替换成 NaN 对应的那个常量,比如上文提到的 0x7fc00000。

1.5K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到
    领券