当前位置: 首页 > news >正文

JavaScript-闭包

闭包概念

在JS中,变量的作用域属于函数作用域,在函数执行后作用域就会被清理、内存也随之回收,但是由于闭包是建立在一个函数内部的子函数,由于其可访问上级作用域的原因,即使上级函数执行完,作用域也不会随之销毁,这时的子函数——也就是闭包

形成: 函数中嵌套函数

作用: 函数内部调用外部变量、构造函数的私有属性、延长变量生命周期

优点: 希望一个变量长期存在内存中、模块化代码避免全局变量的污染、私有属性

缺点: 无法回收闭包中引用变量,容易造成内存泄漏

使用场景

  • ajax请求的成功回调
  • 事件绑定的回调方法
  • setTimeout的延时回调
  • 函数内部返回另一个匿名函数
  • 构造函数的私有属性
  • 计算缓存
  • 函数节流、防抖

相关文章:

  • 22 - 天 TCPIP 四层模型是什么?Cookie、Session、Token 之间有什么区别?从网络角度来看,用户从输入网址到网页显示,期间发生了什么?
  • UART转AHB总线接口参考设计介绍
  • 【cocos creator】游戏优化,内存,性能,包体积大小,加载,drawcall优化
  • 函数调用汇编
  • iPaaS集成平台轻量化架构的重要性
  • xlua 运行原理
  • DoS攻击防范
  • Linux中查询软件存在
  • 迪威 3D 模型发布系统:制造业产品展示革新利器
  • 多源 BFS_多源最短路(十八)542. 01 矩阵 中等 超级源点思想
  • 江科大51单片机笔记【16】AD/DA转换(下)
  • 完美解决ElementUI中树形结构table勾选问题
  • k8s环境部署
  • 算法每日一练 (10)
  • ai智能语音机器人对我们生活有什么影响
  • OpenAI智能体初探:使用 OpenAI Responses API 在 PDF 中实现检索增强生成(RAG)
  • 自然语言处理:文本聚类
  • 202250311-WINDOWS本地4G显存Docker运行vLLM
  • 垂起固定翼+多旋翼+自组网:无人机中低空一体化组网技术详解
  • 平时作业
  • 建设党务网站意义/crm管理系统
  • 建立音乐网站/西安网站外包
  • 和国外做贸易用什么网站/网络推广文案策划
  • 台州网站制作公司/seo工作室
  • 网站怎么做边框/最近七天的新闻重点
  • 和硕网站建设/google竞价推广