Javascript:函数调用后使用两组括号有什么好处

Javascript:函数调用后使用两组括号有什么好处,javascript,web,closures,Javascript,Web,Closures,我知道在Javascript中,一个函数可以返回另一个函数,并且可以立即调用它。但我不明白为什么要这么做。有人能解释一下为什么您希望在代码中这样做的原因和好处吗?另外,返回“hello”的函数是否被视为闭包 function a () { return function () { console.log('hello'); } } //then calling the function a()(); 有人能解释一下为什么您希望在代码中这样做的原因和好处吗 当您总是在调用函数时(

我知道在Javascript中,一个函数可以返回另一个函数,并且可以立即调用它。但我不明白为什么要这么做。有人能解释一下为什么您希望在代码中这样做的原因和好处吗?另外,返回“hello”的函数是否被视为闭包

function a () {
return function () {
    console.log('hello');
  }
}

//then calling the function
a()(); 
有人能解释一下为什么您希望在代码中这样做的原因和好处吗

当您总是在调用函数时(在您的情况下是
a
)就没有理由这样做。一般情况下,原因是
a
的作者允许您可能不想立即调用结果函数。所以
a()案例只是

var f = a();
// later...
f();
另外,返回“hello”的函数是否被视为闭包

是的,从技术上讲,虽然在您的示例中,它没有任何特殊的关闭方式,但是
a
尚未关闭,因为
a
中没有参数或变量

更多(在我贫血的博客上):

有人能解释一下为什么您希望在代码中这样做的原因和好处吗

当您总是在调用函数时(在您的情况下是
a
)就没有理由这样做。一般情况下,原因是
a
的作者允许您可能不想立即调用结果函数。所以
a()案例只是

var f = a();
// later...
f();
另外,返回“hello”的函数是否被视为闭包

是的,从技术上讲,虽然在您的示例中,它没有任何特殊的关闭方式,但是
a
尚未关闭,因为
a
中没有参数或变量

更多(在我贫血的博客上):

有人能解释一下为什么您希望在代码中这样做的原因和好处吗

当您总是在调用函数时(在您的情况下是
a
)就没有理由这样做。一般情况下,原因是
a
的作者允许您可能不想立即调用结果函数。所以
a()案例只是

var f = a();
// later...
f();
另外,返回“hello”的函数是否被视为闭包

是的,从技术上讲,虽然在您的示例中,它没有任何特殊的关闭方式,但是
a
尚未关闭,因为
a
中没有参数或变量

更多(在我贫血的博客上):

有人能解释一下为什么您希望在代码中这样做的原因和好处吗

当您总是在调用函数时(在您的情况下是
a
)就没有理由这样做。一般情况下,原因是
a
的作者允许您可能不想立即调用结果函数。所以
a()案例只是

var f = a();
// later...
f();
另外,返回“hello”的函数是否被视为闭包

是的,从技术上讲,虽然在您的示例中,它没有任何特殊的关闭方式,但是
a
尚未关闭,因为
a
中没有参数或变量

更多信息(在我贫血的博客上):

可能重复的可能重复的可能重复的可能重复的可能重复的