Why does typeof NaN result in 'number'?

Question

Why does typeof NaN result in ‘number’?

Answer

Because NaN(literally, Not a Number) is received when a number error message is given. This is demonstrated by running obvious math errors 0/0 or dividing a string by a number. But that number is still a number by definition. 0/0 may give NaN, but if that was a valid math function, it would result in a number.

Example

// Run in a console window
0/0 // outputs NaN
"Hello, World!" / 3 // also outputs NaN, but if valid, the answer would be a number

Share your thoughts below

4 Likes