首页 > 其他分享 > 说说你对闭包的理解?闭包使⽤场景?

说说你对闭包的理解?闭包使⽤场景?

时间:2022-08-30 21:58:36浏览次数:58  
标签:闭包 场景 内部 外部 理解 内存 函数

  1. 闭包说的通俗⼀点就是打通了⼀条在函数外部访问函数内部作⽤域的通道。正常情况下函数外部是 访问不到函数内部作⽤域变量的
  2. 表象判断是不是闭包:函数嵌套函数,内部函数被return 内部函数调⽤外层函数的局部变量
  • 优点:可以隔离作⽤域,不造成全局污染
  • 缺点:由于闭包⻓期驻留内存,则⻓期这样会导致内存泄露
  • 如何解决内存泄露:将暴露全外部的闭包变量置为null
  • 适⽤场景:封装组件,for循环和定时器结合使⽤,for循环和dom事件结合.可以在性能优化的过程中,节流 防抖函数的使⽤,导航栏获取下标的使⽤

标签:闭包,场景,内部,外部,理解,内存,函数
From: https://www.cnblogs.com/tcyweb/p/16640976.html

相关文章

  • vue——插槽的作用与理解
    1.作用:让父组件可以向子组件指定位置插入html结构,也是一种组件间通信的方式,适用于父组件===>子组件2.分类:默认插槽、具名插槽、作用域插槽3.使用方式:默认插槽:子组件:......
  • Python中函数或者类对象带()与不带()的区别——闭包和函数返回时的常见现象
    Python中函数或者类对象带()与不带()的区别-----闭包和函数返回时的常见现象-函数不带括号时,调用的是这个函数本身,是整个函数体,是一个函数对象,不需等该函数执行完成,返回一个......
  • 【防忘笔记】一个例子理解Pytorch中一维卷积nn.Conv1d
    一维卷积层的各项参数如下torch.nn.Conv1d(in_channels,out_channels,kernel_size,stride=1,padding=0,dilation=1,groups=1,bias=True,padding_mode='zeros',de......
  • JUC学习23:理解JMM
    JUC学习23:理解JMM面试题:请你谈谈你对Volatile的理解:Volatile是Java虚拟机提供轻量级的同步机制;1,保证可见性(JMM);2,不保证原子性;3,禁止指令重排; 什么是JM......
  • 京东云PostgreSQL在GIS场景的应用分享
    在地图或地理信息有关的场景里,地址关键词的检索尤其重要。比如打开百度地图,想要查询某个位置的信息“北京市海淀区清华东路17号中国农业大学”,往往我们输入的是关键词“中......
  • 个人对 JavaScript 闭包的理解
    作用域的概念同级作用域在一个作用域中声明相同名称的变量会发生变量名冲突的问题。假如在作用域A中声明一个变量a,作用域B也声明一个变量a,两个作用域的变量都互不......
  • 【Vue面试题】谈谈你对Vue的diff算法的理解
    1diff算法到底是什么?diff算法是一种通过同层的树节点进行比较的高效算法,它可以不用频繁操作DOM,而是选用虚拟DOM节点操作,说人话就是专门用来处理虚拟DOM节点的。2操作......
  • C++ 左值于右值的理解
    定义与区别左值(lvalue,locatorvalue)表示了一个占据内存中某个可识别的位置(也就是一个地址)的对象。即左值指的是可以取地址的变量。区分表达式的左右值属性有一个简......
  • 报告分享|2022中国AI技术应用场景市场研究及选型评估报告
    原文链接:http://tecdat.cn/?p=28359AI使机器具备“思考与行动”的能力,人与机器需在企业中配合发挥作用人工智能(ArtificialIntelligence),英文缩写为AI。最早由计算机科学......
  • java 字节码指令理解
    publicclassTest{privateintnum1=1;publicstaticintNUM1=100;publicintfunc(inta,intb){returnadd(a,b);}publicint......