js的一種閉包用法

常常忘記閉包的具體用法,寫個例子給之後參考:閉包


沒用閉包: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

相關文章
相關標籤/搜索