JavaScript闭包的简单应用
闭包定义
在JavaScript中,当一个内部函数被其外部函数之外的变量引用时,就形成了一个闭包。简单说,闭包就是能够读取其他函数内部变量的函数。
闭包的作用:
1.可以读取函数内部的变量
2.让这些变量的值始终保持在内存中。
闭包简单应用
例一:
functiona(){
vari=0;
functionb(){
console.log(++i);
}
returnb;
}
varc=a();//执行完varc=a()后,变量c指向了函数b,再执行c()后就会显示i的值(为1)。
c();//输出1
例二:
(function(){
vari=0;
returnfunction(){
console.log(++i);
}
})()();//输出1
例三:
(function(i){
returnfunction(){
console.log(++i);
}
})(0)();//输出1
例四:
for(vari=0;i<3;i++){
setTimeout((function(i){
returnfunction(){
console.log(i);
};
})(i),2000);
console.log(i+10);
}//输出101112(隔两秒后)012
例五:
for(vari=0;i<3;i++){
setTimeout((function(i){
returnfunction(){
console.log(i);
};
})(i)(),2000);
console.log(i+10);
}//立即输出010111212,(两秒后运行程序结束)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。