NaN 在 Javascript 中总是一个虚假的值吗?

Posted

技术标签:

【中文标题】NaN 在 Javascript 中总是一个虚假的值吗?【英文标题】:Is NaN always a falsy value in Javascript? 【发布时间】:2022-01-16 18:08:06 【问题描述】:

console.log(typeof 3/0, Boolean(3/0)); // This returns NaN true
console.log(typeof 0/0, Boolean(0/0)); // This returns NaN false

我认为两者都会在控制台中返回 NaN false,因为 NaNfalsy 值。但这并没有发生。有人可以解释一下吗?

我使用了 VS Code 编辑器和 Google Chrome 浏览器。

【问题讨论】:

试试typeof (3/0),因为3/0实际上给出了Infinity,所以类型是“数字”(你实际上是在做(typeof 3)/0 参考:Operator precedence 知道了!谢谢...也感谢您编辑问题。 【参考方案1】:

3/0 的结果是Infinity(不是NaN)。

根据规范,无穷大是一个阈值。

【讨论】:

以上是关于NaN 在 Javascript 中总是一个虚假的值吗?的主要内容,如果未能解决你的问题,请参考以下文章

在这个 javascript 字谜问题中,我一直在变得虚假而不是真实

从数组中过滤 NaN

分贝的大小总是在 C# 中返回 NaN

javascript基础学习心得01

javascript实用

JavaScript基础知识整理