JS中的闭包

闭包

闭包的概念其实很简单,就是函数A内部有一个函数B,函数B可以访问函数A的变量。也就是说闭包是指有权访问另一个函数作用域中变量的函数,利用闭包可以突破作用域链。

闭包的特性:

1、函数内再嵌套函数

2、内部函数可以引用外层的参数和变量

3、参数和变量不会被垃圾回收机制回收

使用闭包主要是为了设计私有的方法和变量闭包的优点 是可以避免全局变量的污染,缺点是闭包会常驻内存,增大内存使用量,使用不当容易造成内存泄露,再JS中,函数即闭包,只有函数才会产生作用域的概念

使用闭包的好处就是可以读取函数内部的变量,还有就是让变量始终保持在内存中,能够实现封装和缓存。

相关推荐
DevUI团队几秒前
超越input!基于contentediable实现github全局搜索组件:从光标定位到输入事件的全链路设计
前端·javascript
天天扭码4 分钟前
前端必备技能 | 使用rem实现移动页面响应式
前端·javascript·css
Momoyouta6 分钟前
draggable拖拽列表与虚拟列表结合实例
前端·javascript
magic 24513 分钟前
深入解析Promise:从基础原理到async/await实战
开发语言·前端·javascript
海盗强14 分钟前
babel和loader的关系
前端·javascript
顾洋洋19 分钟前
WASM与OPFS组合技系列三(魔改写操作)
前端·javascript·webassembly
清粥油条可乐炸鸡25 分钟前
el-transfer穿梭框数据量过大的解决方案
前端·javascript
听风吹等浪起30 分钟前
html5:从零构建经典游戏-扫雷游戏
前端·html·html5
独立开阀者_FwtCoder30 分钟前
TypeScript 是怎么工作的?一文带你深入编译器内部流程
前端·javascript·面试
独立开阀者_FwtCoder35 分钟前
前端自适应方案全面解析:打造多端适配的现代网页
前端·javascript·面试