JS中的闭包

闭包

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

闭包的特性:

1、函数内再嵌套函数

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

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

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

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

相关推荐
Highcharts.js10 分钟前
Highcharts 使用指南Treegraph chart 树状图/结构树图|创建谱系图表、决策树、结构知识树等的图表工具
javascript·决策树·highcharts·图表开发·结构树·可视化图表库·谱系图表
局i13 分钟前
React 简单地图组件封装:基于高德地图 API 的实践(附源码)
前端·javascript·react.js
进击的尘埃25 分钟前
Service Worker + stale-while-revalidate:让页面"假装"秒开的正经方案
javascript
yuki_uix27 分钟前
防抖(Debounce):从用户体验到手写实现
前端·javascript
张元清29 分钟前
每个 React 开发者都需要的 10 个浏览器 API Hooks
前端·javascript·面试
进击的尘埃31 分钟前
给 Claude Code 造个趁手的 MCP Tool Server,聊聊我踩的那些坑
javascript
yuki_uix32 分钟前
深拷贝:JavaScript 引用类型的完全复制之道
前端·javascript
默默学前端1 小时前
JavaScript 中 call、apply、bind 的区别
开发语言·前端·javascript
Cg136269159741 小时前
JS函数表示
前端·html
℘团子এ1 小时前
vue3中,el-table表格固定列后出现表格线段折断的问题
javascript·vue.js·elementui