闭包


ReactNative系列-文章

闭包

释义(来自百度百科)

闭包就是能够读取其他函数内部变量的函数。例如在javascript中,只有函数内部的子函数才能读取局部变量,所以闭包可以理解成“定义在一个函数内部的函数“。在本质上,闭包是将函数内部和函数外部连接起来的桥梁。

例子

function makeFunc() {
    var name = "Mozilla";
    function displayName() {
        console.log(name);
    }
    return displayName;
}

var myFunc = makeFunc();
myFunc(); // Mozilla

作用

  1. 保护函数内的变量安全,如上述例子,函数makeFunc()中的变量name,只有函数displayName()才能访问,其它途径无法访问到,因此保护了name的安全性。
  2. 在内存中维持这个变量。

缺点

  1. 由于闭包会使得函数中的变量都被保存在内存中,内存消耗很大。
  2. 闭包会在父函数外部,改变父函数内部变量的值。
已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页