Javascript函数调用语法不清楚

时间:2013-10-02 18:50:09

标签: javascript

我似乎无法找到描述以下语法的引用:

 func() ();

这个func的调用是在构造函数的末尾。构造函数中的其他调用是“正常”。

3 个答案:

答案 0 :(得分:3)

func()返回一个函数,然后由第二组()调用。

function func () {
  return function () {
    alert("ok!");
  }
}

func()(); // ok!

答案 1 :(得分:1)

func()();

相当于:

var tempfunc = func();
tempfunc();

这用于运行返回另一个函数的函数。

答案 2 :(得分:0)

为避免混淆: 我们知道函数会像这样被调用:

functionName ();

因此()之前的任何内容都是函数名称

如果func() ()要记住func()正在替换functionName,那么这也是一个函数调用,但即使是func()本身也是一个函数,因此我们得出结论,这是一个带函数的函数。

对于更合适的定义:func() ()是一个函数,它有另一个函数作为返回值,通过这样做,我们调用返回的函数来执行。