zoukankan      html  css  js  c++  java
  • 什么是闭包?闭包的作用是什么?

    什么是闭包?

    var local = 10;
    funtion foo(){
      console.log(local)  
    }

    其实上面的代码,就表示一个闭包。也就是:函数,以及函数内部能访问到的变量的集合

    但通常情况下使用闭包时,是使用函数嵌套函数实现的,如下

    funtion foo(){
      var local = 10;  
      funtion bar() {
        local++;
        return local;
      } 
        return bar;
    }
    
    var func = foo();
    func();

    函数bar,以及其内部能访问到的所有变量的集合构成了一个闭包。之所以使用函数嵌套函数的方式,是为了达到闭包的目的--隐藏变量

    闭包的作用

    用来间接访问一个变量,或者说是隐藏变量

    如果将一个变量声明为全局变量,那么所有人都可以访问到,所有人都可以改动数据,不安全

    但如果使用局部变量声明,那么外部没有人可访问到

    所以使用闭包,将更改数据的方法返回,以达到安全性和更改数据的兼得

  • 相关阅读:
    Android获取手机内存和sd卡相关信息
    总结(创建快捷方式等)
    正则是个好东西
    Android自定义AlertDialog
    Eclipse生成author等注释
    day18 io多路复用
    json 模块
    re 模块
    random 模块
    hashlib 模块
  • 原文地址:https://www.cnblogs.com/ashen1999/p/12713056.html
Copyright © 2011-2022 走看看