JavaScript中的闭包

 更新时间:2016年02月24日 09:29:50   作者:SJBlog  
闭包,官方对闭包的解释是:一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分

1、什么是闭包

闭包,官方对闭包的解释是:一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分。

简单的说,Javascript允许使用内部函数---即函数定义和函数表达式位于另一个函数的函数体内。而且,这些内部函数可以访问它们所在的外部函数中声明的所有局部变量、参数和声明的其他内部函数。当其中一个这样的内部函数在包含它们的外部函数之外被调用时,就会形成闭包。

闭包的特点

1 函数嵌套函数

2 函数内部可以引用外部的参数和变量

3 参数和变量不会被垃圾回收机制回收

一般函数执行完毕后,局部活动对象就被销毁,内存中仅仅保存全局作用域。但闭包的情况不同!

function fn(){
var a = ;
function fn(){
//可以访问fn中定义的a值
alert( a++ );
}
fn();
}
fn(); //
fn(); // 
function fn(){
var a = ;
function fn(){
//可以访问fn中定义的a值
  alert( a++ );
}
return fn;//
}
var f = fn();
f(); // 执行完后a还在内存中
f(); //
f = null; //a被回收

以上所述是小编给大家介绍JavaScript中的闭包,希望对大家有所帮助!

相关文章

  • 浅析js 文字滚动效果

    浅析js 文字滚动效果

    文字滚动显示,是网页企业公告,文字链广告常用的一种效果,说不定在什么时候你就能看到它。
    2010-05-05
  • JS分页控件 可用于无刷新分页

    JS分页控件 可用于无刷新分页

    今天无意看到了这个分页控件,不过使用方法不是很清楚没有研究,。大家可以自行研究,里面的函数写法倒是不错,需要内容的结合
    2013-07-07
  • JavaScript通过join函数连接数组里所有元素的方法

    JavaScript通过join函数连接数组里所有元素的方法

    这篇文章主要介绍了JavaScript通过join函数连接数组里所有元素的方法,实例分析了javascript中join函数的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • 详解JavaScript的三种this指向方法

    详解JavaScript的三种this指向方法

    这篇文章主要介绍JavaScript的三种this指向的方法:call()、bind()、apply(),文中通过代码示例介绍的非常详细,需要的朋友可以参考下
    2023-05-05
  • js实现自动图片轮播代码

    js实现自动图片轮播代码

    这篇文章主要为大家详细介绍了js实现自动轮播的实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • TypeScript 安装使用及基本数据类型

    TypeScript 安装使用及基本数据类型

    这篇文章主要介绍了TypeScript 安装使用及基本数据类型,本文分步骤给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • JS隐藏参数post传值实例

    JS隐藏参数post传值实例

    JS隐藏参数post传值实例,需要的朋友可以参考一下
    2013-04-04
  • JavaScript中清空数组的三种方式

    JavaScript中清空数组的三种方式

    本文主要介绍了JavaScript中清空数组的三种方式。具有很好的参考价值。下面跟着小编一起来看下吧
    2017-03-03
  • JavaScript style对象与CurrentStyle对象案例详解

    JavaScript style对象与CurrentStyle对象案例详解

    这篇文章主要介绍了JavaScript style对象与CurrentStyle对象案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • three.js镜头追踪的移动效果实例

    three.js镜头追踪的移动效果实例

    这篇文章主要为大家介绍了three.js镜头追踪的移动效果实例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08

最新评论