javascript (function(){})()什么意思?有什么作用?匿名函数?

第一次看到jQuery这段代码的时候有点不解,“(function(){忽略其他代码})()”这代码片什么意思?
后来通过查阅网上的文章才明白~
这只是函数深藏不漏的用法而已!
下面来告诉我自己这到底是什么意思0..0
可能大家都明白一下javascript以下几种函数的声明方式:
function add(a,b){return a+b;}
var add=function(a,b){return a+b;}
var add=new Function(“a”,”b”,”a+1”);
以上函数是有名字的,方便外部调用它。但是假如函数没有名字呢?
以代码“var add=function(a,b){return a+b;}”为例,等号右边function部分返回的是一个函数的引用,假如我们不用“add”来接收,那那么函数是不是就不存在了?答案是不可能的。那为什么要用“add”来接收?方便找到调用执行而已!
add(1,2);
那去掉“var add=”之后成了什么?那就是匿名函数!
问题来了,匿名函数怎么调用执行?
我们先来看“var add=function(a,b){return a+b;}”这个函数如何调用执行了?很简单,呵呵,add(1,2);
表达式中“=”这玩意,呵呵,既然add(1,2)能调用执行,那是不是等同于 (function(a,b){return a+b;})()也能?必须能!再把参数和函数体中的逻辑处理去掉,不就成了(function(){})()!
所以能猜到(function(){})()的作用就是让{}里边的内容在js被加载的时候就能运行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值