常常忘記閉包的具體用法,寫個例子給之後參考:閉包
沒用閉包:ide
for(var i = 0; i < 100; i++){ setTimeout(function(){ console.log(i)},1000 ) }
結果1s後顯示100個100
spa
使用閉包:it
for(var i = 0; i < 100; i++){ (function(i){ return (function(i){ setTimeout(function(){console.log(i)},1000) })(i) })(i) }
結果1s後顯示0-99
io