我似乎无法找到描述以下语法的引用:
func() ();
这个func的调用是在构造函数的末尾。构造函数中的其他调用是“正常”。
答案 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() ()
是一个函数,它有另一个函数作为返回值,通过这样做,我们调用返回的函数来执行。