# 概念

IIFE立即调用函数表达式是一个在定义时就会立即执行的js函数。其目的是隔离作用域,避免污染。

# 形式

可以添加+ ! -...等目的是让其通过语法检查

(function(){alert('我是匿名函数')} ()) // 用括号把整个表达式包起来
(function(){alert('我是匿名函数')}) () //用括号把函数包起来
!function(){alert('我是匿名函数')}() // 求反,我们不在意值是多少,只想通过语法检查。
+function(){alert('我是匿名函数')}()
-function(){alert('我是匿名函数')}()
~function(){alert('我是匿名函数')}()
void function(){alert('我是匿名函数')}()
new function(){alert('我是匿名函数')}()

# 示例

// 自执行匿名函数 结构包含:匿名函数和立即执行函数表达式()
(function(){
   // do something 
})()

// 加参数
!function(x, y) {
  // do something
  console.log(x+y)
}(1, 2)