關(guān)于閉包的文章
https://medium.freecodecamp.org/whats-a-javascript-closure-in-plain-english-please-6a1fc1d2ff1c
mozilla
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Closures
TIM截圖20180124133823.png
我的一個解釋
let sum = 0;
const f = function (){
let f_a = 100;
setInterval(()=>{
f_a++;
sum++;
},3000);
}
當(dāng)多次執(zhí)行 f() 時,每個 f 都有自己的f_a, 所有 f 使用同一個sum须眷。
function定義時生成closure, closure 限定了function能訪問的scope。
每次執(zhí)行function時兼呵,function 自己的scope中的值都是新的泣栈。
當(dāng)scope中的值被引用议泵,它就繼續(xù)存在狼速。