Example 1 — Detect NaN
The literal NaN and Number.NaN are the same special number value.
console.log(Number.isNaN(NaN)); // true
console.log(Number.isNaN(Number.NaN)); // true
console.log(Number.isNaN(37)); // false
console.log(NaN === NaN); // false — never use === How It Works
- Literal NaN. Type is number and value is NaN →
true. - Number.NaN. Same IEEE NaN as the global
NaNconstant. - Normal numbers.
37is a finite number →false. - Equality fails.
NaN === NaNis alwaysfalse— useNumber.isNaN.

