Js 中立即执行函数的几种写法

  • 第一种 ()()

    1
    2
    3
    let result01 = (function (){
    return 1;
    })();
  • 第二种

    1
    2
    3
    let result02 = (function (){
    return 2;
    }())
  • 第三种:使用一元运算符 + - ! ~

    1
    2
    3
    4
    +function (){}()
    -function (){}()
    !function (){}()
    ~function (){}()
  • 注意:在使用一元运算符的时候其整体的返回值是进行一元运算过后的值

  • 在不在意函数的返回值的情况下 可以使用一元操作符
  • 这个立即执行函数拥有独立的作用域,不仅避免了外界访问此 IIFE 中的变量,而且又不会污染全局作用域
  • 当遇到第二个 () 时,JavaScript 引擎将直接执行函数