JS中自执行的匿名函数

JS中的自执行的匿名函数有一个更标准的名字“立即执行表达式”,常用到的格式为:

(function(){
//代码
})();
最后一对()里写函数参数。

Javascript中明确规定不能以function开头,所以:

function(){

//代码

}()

这种写法是错误的。这种写法期望是立即调用一个匿名函数表达式,结果是进行了函数声明,但函数声明必须要有标识符做为函数名称。

那些匿名函数附近使用括号或一些一元运算符的惯用法,就是来引导解析器,指明运算符附近是一个表达式。按照这种理解,可以写出五类、超过十几种的让匿名函数表达式立即调用的写法

( function() {}() );
( function() {} )();
[ function() {}() ];

~ function() {}();
! function() {}();
+ function() {}();
- function() {}();

delete function() {}();
typeof function() {}();
void function() {}();
new function() {}();
new function() {};

var f = function() {}();

1, function() {}();
1 ^ function() {}();
1 > function() {}();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值