首页 > 试题广场 >

什么是js的闭包?有什么作用,用闭包写个单例模式

[问答题]

什么是js的闭包?有什么作用,用闭包写个单例模式

闭包就是可以其他函数内部变量的函数。
作用:模仿块级作用域;保存外部函数的变量;封装私有变量
发表于 2020-07-23 17:49:34 回复(0)

<p>闭包就是可以访问和操作其他函数内部变量的函数,由于在JS当中只有函数内部的子函数才可以访问其内部的变量,所以可以把闭包定义为:定义在一个函数内部的函数</p><p><br></p>

其作用就是用来获取和访问其他函数内部的变量

编辑于 2020-06-13 14:23:02 回复(0)
闭包:函数A的返回值为函数B,并且函数B中调用了函数A中的变量,如果在函数A以外调用了函数B,那么此时就形成了闭包。
作用:读取其他函数内部的变量,并且使该变量一直存在于内存当中

实例:
function A() {
    let a = 1
    return function B () {
        console.log(a)
    }
}

let test = A()
test()
         
        
发表于 2020-01-12 22:16:07 回复(0)