[NaN](<https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/NaN>) stands for “Not a Number.” When a mathematical function or operation in JavaScript cannot return a specific number, it returns the value NaN instead.

It is a property of the global object, and a reference to [Number.NaN](<https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number/NaN>)

window.hasOwnProperty('NaN'); // true
NaN; // NaN

Perhaps confusingly, NaN is still considered a number.

typeof NaN; // 'number'

Don’t check for NaN using the equality operator. See [isNaN](<https://stackoverflow.com/documentation/javascript/700/built-in-constants/1760/testing-for-nan-using-isnan#t=201607272211248187198>) instead.

NaN == NaN  // false
NaN === NaN // false