setTimeOut 打印 0-4的三种方法
方法一 使用匿名闭包
for(var i = 0; i < 5; i++) { getySetTimeout(i) } function getySetTimeout(i) { setTimeout(function () { console.log(i); }, 1000) }
方法二 (使用自执行函数)
for(var i = 0; i < 5; i++) { console.log('for===' + i); (function (i) { return setTimeout(function () { console.log(i); }, 1000) }(i)) }
方法三 使用let
for(let i = 0; i < 5; i++) { setTimeout(function () { console.log(i); }, 1000) }