for循环中,setTimeout打印的问题
于2023-08-27 15:37:37发布
36
<script>
for (var i = 0; i < 5; i++) {
setTimeout(function () {
console.log(i)
}, 1000);
}
// 输出5个5
for (let i = 0; i < 5; i++) {
setTimeout(function () {
console.log(i)
}, 1000);
}
// 输出0,1,2,3,4
for (var i = 0; i < 5; i++) {
(function (i) {
setTimeout(function () {
console.log(i)
}, 1000);
})(i)
}
// 使用es5实现let
</script>