NaN is a value represents not a number.
NaN is a top level property and is not associated with any object.
NaN is never equal to any other number, including NaN itself. It is not possible to check whether a value is a number by comparing it with NaN using equal to operator. You have to use the isNaN function instead.
Methods like Number constructor, parseFloat, and parseInt return NaN if the argument passed to them are not numbers.
NaN property can be used to refer an error for a function, provided the function returns a valid number.
Since Equality operator (i.e. == and ===) cannot be used to test a value against NaN, If you wish to perform such a test, use isNAN instead of NAN.