立即执行函数表达式(IIFE)

需求:想要声明函数的时候同时执行这个函数。

一、错误示例


function(){
    console.log(1);
}();

return:

报错:SyntaxError: Unexpected token (

二、正确示例


方法一 ()


最流行的也最被接受的方法是将函数声明包裹在圆括号里来告诉语法分析器去表达一个函数表达式

// <!-- 方法 A -->
(function(){
    console.log(1);
}());

// <!-- 方法 B -->
(function(){
    console.log(1);
})();

方法二 一元操作符 如!``~``-``+

这种方法会使代码更简洁最直观,我个人推荐


!function(){
    console.log(1);
}();

方法三 new

这种方法也很有独创性


new function(){
    console.log(1);
}()

参考资料:

[ JavaScript:立即执行函数表达式(IIFE)]
https://segmentfault.com/a/1190000003985390

原文地址:https://www.cnblogs.com/xjnotxj/p/9480978.html