作家
登录

JavaScript 中级笔记 第四章 闭包

作者: 来源:www.28hudong.com 2013-03-30 02:21:07 阅读 我要评论

5,闭包 闭包意味着内层的函数可以引用存在于包围它的函数内的变量,即使外层函数的执行已经终止。 让我们先来看一个闭包的例子。 [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行] 代码①是处于函数内层,不过它可以使用外层的变量num。 闭合还能解决另一个常见的Js问题,全局变量的影响。 通过自动执行匿名函数组合闭包,便可把原本属于全局的变量隐藏起来。看下面的例子: [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行] 在使用setTimeout时,我们经常也用上了闭包。 demo CssRain [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行] 以这种方式使用setTimeout(),可以避免一些问题。 当然使用闭包 也会带来一些问题。如下代码所示: demo AAA BBB CCC [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行] 单击li弹出的序号为 3 ,并不是正确的序号,它引用的值是最后一次的赋值。 我们可以使用下面代码来解决: [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行] 通过使用闭包对作用域的控制,从而符合了我们的要求。 上面的代码可以分解为: [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行] 闭包的概念不容易掌握,我也是花了大量时间和精力才理解。 6,小结 笔记(2),(3),(4)讲解了 JavaScript中的几个重要的内容,包括引用,函数重载,作用域,上下文对象和闭包。 引用的关键内容: 指针,数组引用,字符串引用,区别,传值,传址。 函数重载的关键内容: 参数的数量,参数的类型,arguments,伪数组,typeof,constructor,区别-字符串和对象。 作用域的关键内容: 函数划分,全局作用域,全局对象,window对象的属性,局部作用域,显式声明,隐式声明。 上下文对象的关键内容: this变量,call,apply,参数区别,数组。 闭包的关键内容: 内层函数,外层函数,变量,setTimeout,闭包问题,最后一次的赋值,闭包和作用域。

  推荐阅读

  一个用javascript写的select支持上下键、首字母筛选以及回车取值的功能

调用时可以这样: 1,tempStr=GetNewSelectStr(dataTable.value,"select"+rowIndex,true); 2,makeSelectBox("select"+rowIndex,tempStr,value,obj); tempStr-这个是返回的下拉列表值的框体 dataTable.value-这个>>>详细阅读


本文标题:JavaScript 中级笔记 第四章 闭包

地址:http://www.17bianji.com/kaifa2/JS/28149.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)