JavaScript中的立即执行函数表达式介绍

  我们习惯看到这样的匿名函数

  

复制代码 代码如下:

  (function(){

  console.log("test");

  })();

  之前一直叫的是自执行的匿名函数(self-executing anonymous function)

  发现原来还有一种叫法是: 立即调用函数表达式 (IIFE,Immediately-Invoked Function Expression)

  立即调用函数表达式

  相比于自执行匿名函数,立即调用函数表达式的意思来得更明确一些。

  自执行函数有下面的这一些例子:

  

复制代码 代码如下:

  function foo() { foo(); }

  以及

  

复制代码 代码如下:

  var foo = function() { arguments.callee(); };

  更重要的是,像下面这样的也许是自执行匿名函数

  

复制代码 代码如下:

  var foo = function() { foo(); };