The value of typeof NaN is 'number'. This might seem counterintuitive, but in JavaScript, NaN (Not a Number) is actually a special value of the Number type. It represents computations that resulted in an undefined or unrepresentable value. Despite its name suggesting it's not a number, in terms of its data type, it is categorized as a number. This is part of the IEEE 754 floating-point standard that JavaScript follows.