閉包 :https://baike.baidu.com/item/%E9%97%AD%E5%8C%85/10908873?fr=aladdin
閉包就是能夠讀取其他函數(shù)內(nèi)部變量的函數(shù)。例如在javascript中,只有函數(shù)內(nèi)部的子函數(shù)才能讀取局部變量,所以閉包可以理解成“定義在一個(gè)函數(shù),函數(shù)內(nèi)部和函數(shù)外部連接起來的橋梁。
在js里面
有下面2個(gè)程序
$(function() {
var aa=(i)=>{
setTimeout(function() {
console.log(i);
}, 50);}
for(var i = 0; i < 10; i++) {
aa(i);
}
});
0,1,2,3,4,5,6,7,8,9
$(function() {
var aa=()=>{
setTimeout(function() {
console.log(i);
}, 50);}
for(var i = 0; i < 10; i++) {
aa();
}
});
//10
$(function() {
for(var i = 0; i < 10; i++) {
setTimeout(function() {
console.log(i);
}, 50);
}
});
// 10