匿名函数、自执行匿名函数、闭包

本文介绍了JavaScript中的匿名函数及其与普通函数的区别,强调了匿名函数需要通过调用或自执行来运行。同时,详细阐述了闭包的概念,指出闭包不仅能读取内部变量,还起到保护变量和过滤无效值的作用。闭包的应用包括返回执行环境、保护私有变量和增强函数功能。文章最后总结了闭包的关键特点。
摘要由CSDN通过智能技术生成

一、什么是匿名函数?

匿名函数即字面意思,匿名函数就是没有名字的函数
先看看匿名函数和普通函数的区别

普通函数:
function example(){
return “我是普通函数”;
}
匿名函数:
function(){
return “我是匿名函数”;
}
注意:单独的匿名函数是无法执行的,也无法调用,运行程序会报错

如要运行不报错,需给匿名函数包裹一个括号
(function(){
return “我是匿名函数”;
})

二、如何执行匿名函数

1.调用匿名函数

代码如下(示例):

var a = function(){		//把匿名函数赋值给变量a
	return “我是匿名函数”;
}
//调用
console.log(a())	//打印出"我是匿名函数"

2.自执行匿名函数

代码如下(示例):

(function(){
	return “我是匿名函数”;
})();

其实就是根据上面调用匿名函数的方式来实现,直接走调用那一步 a()
function(){return “我是匿名函数”;}这一块相当于a
然后调用,加上括号
(function(){return “我是匿名函数”;})()这一整块就是(a)(),省略一个括号a()

三、闭包

1.什么是闭包

我看了一下闭包的定义说闭包就是能够读取其他函数内部变量的函数
但是我有个疑问,既然是读取内部变量,为什么不直接return变量
👉👉👉传送门:闭包与直接 return 的区别

1、闭包返回的是执行环境;
2、不只是为了让函数外部拿到内部变量,还能保护私有变量不被随意修改;
3、闭包作为一个可以访问函数内部变量的函数,更多的是可以在其中添加其他的条件,过滤无效的值。 如果直接return 变量,然后赋值的话,还要在后续去判断这个值的有效性。


总结

后续补充

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值