Number.NaN

Baseline 已廣泛支援

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2015 年 7 月⁩以來,各瀏覽器均已提供此特性。

Number.NaN 靜態資料屬性表示“非數字”(Not-A-Number),它等同於 NaN。有關 NaN 行為的更多資訊,請參閱 全域性屬性的描述

試一試

function clean(x) {
  if (x === Number.NaN) {
    // Can never be true
    return null;
  }
  if (isNaN(x)) {
    return 0;
  }
}

console.log(clean(Number.NaN));
// Expected output: 0

數字值 NaN

Number.NaN 的屬性特性
可寫
可列舉
可配置

描述

因為 NaNNumber 的一個靜態屬性,所以您總是使用 Number.NaN 來訪問它,而不是將其作為數字值的一個屬性來訪問。

示例

檢查值是否為數字

js
function sanitize(x) {
  if (isNaN(x)) {
    return Number.NaN;
  }
  return x;
}

規範

規範
ECMAScript® 2026 語言規範
# sec-number.nan

瀏覽器相容性

另見