您的位置:首页 > Web前端 > JavaScript

Javascript自执行函数 (Immediately-Invoked Function Expression)

2016-08-29 17:04 417 查看
1. Javascript编译器在遇到function这个关键字时,默认认为它是function声明,而不是表达式。

2. 在已声明的function后面加括号,即可调用它。比如,

function foo(){console.log('hello javascript.')}

foo();

3. 括号里面允许javascript表达式,(function(){console.log('hello javascript')}), 这样这个匿名函数就是一个表达式,而不是function的声明。根据上面第二点,后面加括号即可执行该函数,即(function(){console.log('hello javascript')})()。这个写法等价于(function(){console.log('hello javascript')}()),推荐用这个写法。

在不考虑返回值的情况下,以下方法都是等价的

+function(){console.log('hello javascript')}()

-function(){console.log('hello javascript')}()

!function(){console.log('hello javascript')}()

~function(){console.log('hello javascript')}()

new function(){console.log('hello javascript')}

new function(name){console.log('hello javascript' + name;)}('bruce')
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: