在javascript中创建函数的不同方法

Nil*_*ne- 5 javascript runtime function

首先 - 是的,我知道有很多关于这个的帖子,或者至少非常相似的帖子.看过那些我还没有找到我正在寻找的答案:

我了解到有两种主要方法可以在javascript中创建函数:

var test = function(a){
   console.log(a);
}
Run Code Online (Sandbox Code Playgroud)

这是在运行时创建的,并且:

function test(a){
    console.log(a);
}
Run Code Online (Sandbox Code Playgroud)

这是在运行时之前创建的.

今天我看到了这个:

(function test(a){
    console.log(a);
})();
Run Code Online (Sandbox Code Playgroud)

我以前从未见过.这个与上面两个有什么区别?

ant*_*rat 3

这是立即调用函数,声明后会立即调用自身。

您可以在维基百科上阅读有关立即调用函数表达式的更多信息。