0

我已经看到,主要是在事件处理程序中,称为 Pascal 风格的函数,即没有括号。myFunction和之间有区别myFunction()吗?如果有,那是什么?

4

2 回答 2

3

当你想调用一个函数时,你总是使用括号。

当您希望它成为回调函数时使用不带括号的原因是您不想在将其分配给事件时调用该函数。当事件被触发时,事件将调用该函数。

您可以像传递任何其他值一样传递函数引用,并在要调用它时使用括号。例子:

function test() {
  alert('test');
}

var x = test; // got the reference
var y = x; // copying it around
y(); // calling the function
于 2012-09-21T07:29:31.827 回答
0

myFunction 是函数对象,可以像任何其他对象/变量一样传递,通常作为回调。myFunction() 调用一个没有任何参数的函数,这个表达式的值就是 myFunction 函数返回的值。

Pascal 风格的函数不是没有括号的函数。Pascal 风格的函数表示首字母不大写的函数名称。根据某些约定,只有构造函数的首字母应该大写,因为将构造函数作为常规函数(没有 new)调用,而将常规函数作为构造函数调用会引发难以发现的严重错误。

于 2012-09-21T07:37:44.390 回答