How to Check NaN in JavaScript

How to Check NaN in JavaScript

Ferenc Almasi • 2020 December 10 • 📖 1 min read

Checking if a value is NaN in JavaScript can be tricky. This is because you can’t use the typeof operator since the type of NaN is surprisingly number.

// This will return "number" as a type
typeof NaN
NaN.js
Copied to clipboard!

You also can’t do value === NaN since NaN is not equal to itself. But since it does not equal to itself, we can check the value against itself: value !== value.

// We can't do triple equal either since NaN is not equal to itself
value === NaN // retun false
NaN === NaN   // return false

// If the value is not equal to itself, we can be sure it is NaN
value !== value
NaN.js
Copied to clipboard!

We can also use the new Number.isNaN() function introduced in ES6:

Number.isNaN(value);
NaN.js
Copied to clipboard!
How to check if something is NaN in JavaScript
If you would like to see more Webtips, follow @flowforfrank

50 JavaScript Interview Questions
Looking to improve your skills? Check out our interactive course to master JavaScript from start to finish.
Master JavaScript

Resources:

Did you find this page helpful?
📚 More Webtips
Frontend Course Dashboard
Master the Art of Frontend
  • check Unlimited access to hundred of tutorials
  • check Access to exclusive interactive lessons
  • check Remove ads to learn without distractions
Become a Pro

Recommended