闭包

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u013003052/article/details/87894080


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. 闭包会在父函数外部,改变父函数内部变量的值。
展开阅读全文

没有更多推荐了,返回首页