跳过内容

eslint/use-isnan 正确性

此规则默认启用。
🛠️ 针对某些违规情况,此规则可以使用自动修复功能。

作用

禁止在不使用 isNaN() 调用时检查 NaN。

原因

在 JavaScript 中,NaN 是数字类型的特殊值。它用于表示按照 IEEE 二进制浮点算术标准指定的双精度 64 位格式表示的任何“非数字”值。

由于 NaN 在 JavaScript 中是独一无二的,因为它不等于任何东西(包括自身),对 NaN 执行比较的结果会令人困惑

  • NaN === NaN 或 NaN == NaN 的评估结果为 false
  • NaN !== NaN 或 NaN != NaN 的评估结果为 true

因此,请使用 Number.isNaN() 函数或全局 isNaN() 函数来测试值是否为 NaN。

示例

javascript
foo == NaN;
foo === NaN;
foo <= NaN;
foo > NaN;

参考

根据 MIT 许可证发布。