我正在学习JavaScript,我在代码中看到了使用typeof和typeof()的相同之处,例如:
这两种情况的结果都是数字:
console.log(typeof 1);
console.log(typeof(1));发布于 2015-01-06 20:47:16
根据ES5规范的说法,typeof是一个一元运算符--例如,与void和delete一样。用分组()包装其表达式只是为了方便(理论上也是为了覆盖默认优先级),但从来没有将其视为函数调用。
发布于 2015-01-06 20:52:28
typeof是一个操作符,类似于+、-、% &等等。它不是一个方法,"1“不是被传递的参数,不需要括号。但是,它将接受方括号,因为它们只是指定操作顺序,就像(1) + (2)是可以接受的一样,尽管方括号是不必要的。所以你给出的例子在这两种情况下都是可以接受的。
发布于 2015-01-06 20:49:03
类型操作符不是函数。您可以用圆括号包围操作数,这样表达式看起来就像函数调用,但是括号只是充当分组操作符(仅次于逗号运算符)。实际上,您可以用各种形式的标点符号来修饰操作数,而不会使操作符脱轨。
typeof (2) //"number"
typeof(2) //"number"
typeof ("a", 3) //"number"
typeof (1 + 1) //"number"https://stackoverflow.com/questions/27806871
复制相似问题