许多的初学者可能会有这样的疑惑,为什么看见这样的写法:
typeof(1.2); # number
这样看起来和python中的type函数不是一个东西吗?
其实不然,这里的括号并不是调用函数的那种括号(准确的来说,应该叫做函数调用运算符),而且一定要记住,typeof是一个运算符,而不是一个函数。那怎么解释这种现象呢?
请看下面的代码:
-(1.2 - 0.3);
+(3.4);
所以,第一段代码中的括号实际上和下面这段代码中的括号含义一样,是用来分组的。所以你可以看到
+(-123); // -123
typeof(123); // number
而且,如果typeof是函数的话,它应该支持以下写法,但是正如第行代码指出的那样,以下写法都是错的。
addOperator = +;
getType = typeof;