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

浦口区建设局网站苏州微网站建设公司

浦口区建设局网站,苏州微网站建设公司,学校建设网站报告书,用源码网站好优化吗一、定义 一句话概括闭包:能够访问函数内部变量的函数与这个变量的组合构成了闭包结构。如下代码 function fuc1(){let num 999return function fuc2(){console.log(num)}}fuc1()(); 如代码所示,fuc2和父级变量num构成了一个闭包环境。 二、原理 子…

一、定义

一句话概括闭包:能够访问函数内部变量的函数与这个变量的组合构成了闭包结构。如下代码

 function fuc1(){let num = 999return function fuc2(){console.log(num)}}fuc1()();

如代码所示,fuc2和父级变量num构成了一个闭包环境。

二、原理

子函数引用了父函数中的变量,导致父函数中的变量不能被垃圾回收机制清除。

三、应用场景

1、变量私有化,防止变量被污染。

var Counter = (function () {var privateCounter = 0;function changeBy(val) {privateCounter += val;}return {increment: function () {changeBy(1);},decrement: function () {changeBy(-1);},value: function () {return privateCounter;},};
})();console.log(Counter.value()); /* logs 0 */
Counter.increment();
Counter.increment();
console.log(Counter.value()); /* logs 2 */
Counter.decrement();
console.log(Counter.value()); /* logs 1 */

2、函数防抖

        let inp = document.querySelector("input")function fun() {console.log(this.value)}inp.oninput = debounce(fun, 3000)function debounce(fun,delay) {let t = nullconsole.log('闭包父级变量T---->',t)return function () {console.log(t,"----每次触发input事件,t的值")if (t) {console.log(t,"清除定时器的值")clearTimeout(t) //每一次触发事件都要先清除定时器然后再重新设置定时器}t = setTimeout(() => {fun.call(this)console.log(t,"setTimeout内")}, delay);}}

四、缺点

父级函数的变量会永久存放在内存中,除非手动清除,否则容易造成内存泄露。

http://www.yayakq.cn/news/212486/

相关文章:

  • 什么是网站的二级目录区块链微信小程序开发教程
  • 制作教育类网站免费建站平台0
  • 网站页面设计如何收费山西省建设监理协会网-官方网站
  • 名词解释 网站内容上海网络推广报价
  • 湖南网络公司网站建设三合一网站建设口碑好
  • 中国电力建设集团网站长沙网站微信开发
  • 任经理++徐州网站建设怎样进WordPress
  • 网站美工做的是什么网站底部 设计
  • 网站怎么做才能得到更好的优化查看wordpress密码
  • 定制网站建设济南属于网站的管理 更新 维护
  • 网页制作模板的网站代码o2o网站建设多少钱
  • 广州网站开发招聘信息做qq群排名的网站是否违规
  • 沈阳网站建设小工作室商业设计平面图
  • 网站建设与规划前景电话网站模版
  • 舟山市住房和城乡建设局网站wordpress电影影视主题
  • 国内精品在线网站建设怎么做公司网站文案
  • 网站建设编写代码问题网络推广产品要给多少钱
  • 敦煌做网站 条件网站开发实训报告参考文献
  • 陵县网站建设wordpress 插件 下载
  • 青岛网站建设公司好找吗鲅鱼圈网站开发
  • 网站建设大概需要多少钱WordPress接入Google
  • 怎样修改网站首页头部安陆网站的建设
  • 网站的建议极简wordpress模板
  • 北京商城网站开发公司wordpress shortinit
  • 张店网站建设价格网站开发与数据库有关系吗
  • 网站续费多少钱2345浏览器网址
  • 做淘宝门头的网站合肥大建设
  • 哪种网站开发简单spring可以做多大的网站
  • 同城招聘网站自助建站四川省城乡建设信息网站证件查询
  • 创意上海专业网站建设工程找队伍信息网