为什么1/0的类型是NaN?

set*_*tec 2 javascript

键入typeof 1/0的 Chrome控制台会提供NaN

但事实并非如此,因为1/0是Infinity,不是NaN.

这怎么可能?

Fré*_*idi 15

那是因为typeof运营商的优先级高于/.您的代码相当于:

(typeof 1) / 0
Run Code Online (Sandbox Code Playgroud)

这是NaN.

发行:

typeof (1 / 0)
Run Code Online (Sandbox Code Playgroud)

给出预期的结果,"number".