前端闭包

Posted 落落月

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了前端闭包相关的知识,希望对你有一定的参考价值。

 对于进入前端这么长时间的我,现在才总结这个问题,也是渣渣了,不过亡羊补牢,犹未晚矣。

一、闭包的含义

外部函数包含一个内部函数,内部函数能够访问外部函数的变量。

说到闭包,我们先了解一下js中变量的作用域和作用域链;

js中有两种变量:局部变量和全局变量;

js的特殊之处是函数具有自己的函数块级作用域,函数在自己的作用域内能够访问外部的全局变量,可是函数外部不能访问函数内部的局部变量。

因此,这个时候要怎么让外部访问函数内部的变量?闭包的作用来了。

 

二、闭包的作用

1、让函数外部能够读取到函数内部的变量;换个说法,间接作用就是建立私有作用域,防止全局环境的污染;

2、让变量的值一直保存在内存中,有些时候,比如需要利用函数进行计数,而不需要清零的情况可以用到;

 

以上是关于前端闭包的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript闭包应用场合——控制前端接口轮训

前端面试-闭包和作用域

前端函数式 -- 4. 闭包

前端学习之函数式编程—闭包

前端面试,备考第 13 天 - 执行上下文 | 作用域链 | 闭包

web前端JavaScript闭包