对Javascript“闭包”的简单理解
闭包:
function a(){
var i=0;
function b(){
alert(++i);
}
return b;
}
var c = a();
c();
这段代码有两个特点:
1、函数b嵌套在函数a内部;
2、函数a返回函数b。
这样在执行完var c=a()后,变量c实际上是指向了函数b,再执行c()后就会弹出一个窗口显示i的值(第一次为1)。这段代码其实就创建了一个闭包,为什么?因为函数a外的变量c引用了函数a内的函数b,就是说:
当函数a的内部函数b被函数a外的一个变量引用的时候,就创建了一个闭包。
js代码为什么要写成这样了?
http://www.javaeye.com/problems/11644
深入理解Javascript闭包(closure)
javascript 避免闭包引发的问题
http://www.jb51.net/article/17497.htm
js面向对象--理解闭包
http://hi.baidu.com/heroguang/blog/item/1c006ff4904c00d1f2d385ca.html
面向对象的 Javascript 语言特性:闭包
http://www.cnblogs.com/zitiger/archive/2007/06/08/776777.html
JAVA 需要引入闭包吗
http://www.javaeye.com/wiki/topic/406229
PHP 5.3 将加入闭包语法
http://www.javaeye.com/news/5885-php-5-3-will-add-closure-grammar
js闭包
http://www.javaeye.com/topic/349458
IE下闭包引起跨页面内存泄露探讨
http://www.javaeye.com/topic/180611?page=1
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
webalizer for windows2003安装指南
想监控apache在win下的流量及用户访问量,配了两天的cacti,baidu google来回地切换搜索,最终以失败告终,有图无数据,以下是总结的webalizer for windows2003安装指南。 1、下载webalizer-2.01-10-win32-bin.zip并解压缩至c:\webalizer 2、重命名smaple.conf为webalizer.conf,并增加配置: LogFile c:/apache/logs/access.log #要获取的日志文件 OutputDir c:/webalizer/usage #日志输出目录 Incremental yes ReportTitle Web主机流量分析 #标题 #配置帮助看这里:http://hi.baidu.com/wangj998/blog/item/b59519f4ba6307ddf3d38531.html 3、输出webalizer c:\webalizer\>webalizer,此时webalizer目录下将创建usage目录,其内容即为统计数据页面 4、设置能通过WEB访问webalizer (...
- 下一篇
http TRACE 跨站攻击漏洞测试与防御修复
http TRACE 跨站攻击漏洞测试与防御修复 apache关闭方法可以直接在配置文件http.conf添加TraceEnable off 关闭 有版本要求 好像是2.0以上 在httpd.conf下搜索Global 在 ### Section 1: Global Environment 下面加 TraceEnable off 保存OK 如何测试呢.这样 在cmd下输入 telnet 127.0.0.1 80 然后在黑屏状态下输入 TRACE / HTTP/1.0 Host: foo 在添加TraceEnable off之前,应返回 HTTP/1.1 200 OK Date: Sat, 20 Oct 2007 20:39:36 GMT Server: Apache/2.2.6 (Debian) PHP/4.4.4-9 mod_ruby/1.2.6 Ruby/1.8.6(2007-06-07) Connection: close Content-Type: message/http TRACE / HTTP/1.0 Host: foo Any text entered here wil...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8编译安装MySQL8.0.19
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2整合Redis,开启缓存,提高访问速度
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Hadoop3单机部署,实现最简伪集群
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果