本文共 414 字,大约阅读时间需要 1 分钟。
闭包:
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代码为什么要写成这样了?
深入理解Javascript闭包(closure)
javascript 避免闭包引发的问题
js面向对象--理解闭包
面向对象的 Javascript 语言特性:闭包
JAVA 需要引入闭包吗
PHP 5.3 将加入闭包语法
js闭包
IE下闭包引起跨页面内存泄露探讨
转载地址:http://qtoxx.baihongyu.com/