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

25个优秀个人网站设计模板网站数据分析平台

25个优秀个人网站设计模板,网站数据分析平台,贸易公司寮步网站建设,旅游手机网站开发了解闭包的前提必须得了解什么是作用域链。也就是#xff08;一#xff09;的内容。 参考#xff1a; 浏览器工作原理与实践 破解前端面试#xff1a;从闭包说起 闭包 闭包是一个可以访问外部作用域中变量的内部函数#xff0c;因为内部函数引用了外部函数的变量#…了解闭包的前提必须得了解什么是作用域链。也就是一的内容。 参考 浏览器工作原理与实践 破解前端面试从闭包说起 闭包 闭包是一个可以访问外部作用域中变量的内部函数因为内部函数引用了外部函数的变量导致这些变量无法被回收将持久保存在作用域内这就形成了一个闭包。 这些被引用的变量直到闭包被销毁时才会被销毁。 在 JavaScript 中根据词法作用域的规则内部函数总是可以访问其外部函数中声明的变量当通过调用一个外部函数返回一个内部函数后即使该外部函数已经执行结束了但是内部函数引用外部函数的变量依然保存在内存中我们就把这些变量的集合称为闭包。比如外部函数是 foo那么这些变量的集合就称为 foo 函数的闭包。 闭包必须要引用到外部函数的变量如果没有引用到的话外部函数执行完之后JS引擎执行垃圾回收时会认为这个外部函数已经执行完了执行环境中没有变量被正在引用或者使用所以可以销毁。 闭包的回收 如果闭包是一个全局变量页面关闭时它才会被回收如果是局部变量则引用它的函数执行完毕后JS引擎垃圾回收时会将它销毁。 如果这个全局变量的闭包占用了许多内存又以后不再使用的话就会造成内存泄漏该内存空间使用完毕之后未被回收。 因此如果该闭包会一直使用那么它可以作为全局变量而存在但如果使用频率不高而且占用内存又比较大的话那就尽量让它成为一个局部变量。 使用 其实我们经常使用到了闭包却没有发现。 防抖节流setTimeout (function autorun(){let x 1;setTimeout(function log(){console.log(x);}, 10000); })();变量 x 将一直存活着直到定时器的回调执行或者 clearTimeout() 被调用。 如果这里使用的是 setInterval() 那么变量 x 将一直存活到 clearInterval() 被调用。 DOM节点事件 (function autorun(){let x 1;$(#btn).on(click, function log(){console.log(x);}); })();当变量 x 在事件处理函数中被使用时它将一直存活直到该事件处理函数被移除。 异步事件 Promise (function autorun(){let x 1;fetch(http://).then(function log(){console.log(x);}); })();变量 x 将一直存活到接收到后端返回结果回调函数被执行。
http://www.hkea.cn/news/14414477/

相关文章:

  • 福州市市政建设开发有限公司网站app开发公司有哪些部门
  • 依波手表价格 官方网站个人做网站租云服务器
  • 清华建设工程有限公司公司网站公众号开发零基础教程
  • 网站 开发 工具销售口才900句
  • 做货代用的网站做任务反佣金的网站
  • 天津泰达建设集团有限公司网站公司网站制作公
  • 永兴县网站建设专业校际凡科平台怎么登录
  • 邯郸市教育考试院网站做音乐网站
  • 昆山网站建设第一品牌软件开发平台介绍
  • 网站建设策划公司教育行业手机wap网站
  • 响站怎么建设网站无锡做推广的网站
  • 雷军做的网站单位网站建设汇报材料
  • 衡水网站建设最新报价外包工是临时工吗
  • 网站内做营销活动使用工具西安网站设计制作多少钱
  • 优质高职院建设网站品牌推广的目的和意义
  • 网站访问大小做游戏视频网站用什么程序好
  • 重庆网站seo分析哈尔滨做网站的
  • 清远网站开发oto网站开发
  • 镇赉县做网站的wordpress中文目录下
  • 如何制作自己的网站图?wordpress站内链接
  • 宝安大型商城网站建设网站开发的背景和意义
  • 山东省建设部网站官网摄像机怎么在自己家网站做直播
  • 网站进行规划与设计网络设计是啥
  • 网站建站东莞网站建设比较好的公司
  • phpnow 搭建本地网站有的网站打不开是什么原因呢
  • 4399页游网站网站与网页 主页的概念及它们的区别
  • 免费用手机做网站app开发商城
  • 济南营销型网站建设团队福州专业建站
  • 常德网站建设设计上海高端室内设计事务所
  • 网站建设用什么视频播放器北京丰台网站优化