码迷,mamicode.com
首页 > 编程语言 > 详细

Javascript 中闭包的概念

时间:2015-08-27 21:04:14      阅读:221      评论:0      收藏:0      [点我收藏+]

标签:

一直再说闭包闭包,其实自己一直不懂闭包是个什么意思,今天,上百度找了找闭包的相关资料,参考整理了下,希望以后能用得着;

 

闭包其实是javascript语言中的一个难点,也是该语言的一个特色,据说很多高级应用都需要闭包的支持;

先理解下下面的几个概念:

1、变量的作用域

javascript中声明变量使用var 关键字,稍微了解的同学都知道,加了var关键字声明的变量是局部变量,反之则为局部变量

例如:

  var text = ‘hello‘;   局部变量

  text = ‘world‘;  全局变量

局部变量和全局变量一般在哪里应用得最多呢,不言而喻就是函数中;

技术分享

局部变量:

      var x = 1;

      function demo1(){

        alert(x);

      }

      demo1(); //结果1

      function demo1(){

        var x = 1;

      }

      alert(x); //结果error

全局变量:

      function demo1(){

        x = 1;

      }

      demo1();

      alert(x); //结果 1

总结:声明变量要加var,负责,同学你声明的变量是一个全局变量!

——————————————————————————————————————————————————

2、如何在外部调用or使用一个局部变量

方法很简单,就是在函数内部在定义一个函数;  (插几句:个人感觉似乎与php面向对象中的某些处理方法有点相似,简单说,一个类中,用public中使用Protecte的东西)

直接技术分享

  function demo1(){

    var x = 1;

    function demo2(){

      alert(x); //结果1

    }

  }

  demo1();

 

Javascript 中闭包的概念

标签:

原文地址:http://www.cnblogs.com/mma5694/p/4764303.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!