为什么typeof不是一个方法?

Sco*_* C. 2 javascript

出于好奇,类型不是常规方法或函数的原因是什么,而是把它放在变量或数据的前面.

他们这样做: var something = typeof somethingElse;

而不是: var something = somethingElse.typeof();

而且,引用typeof和var关键字的正确术语是什么?他们是运营商吗?

Ry-*_*Ry- 9

是的,typeof是一元运算符,如+,-,~,!void.var另一方面,它是变量声明语句的一部分,并没有它的奇特名称.

我猜测它不是一个方法的原因是双重的:

  1. 你可以在null和上使用它undefined.
  2. 您可以在未声明的变量上使用它而不会出错.

如果它是常规方法,那么这些方法都不会起作用,并且为特定方法外观添加特殊异常是很混乱的.