注意这里的是 var i=0;
<script>
var arr = ['1', '2', 'a', 'b', 'cde', '888']
for (var i = 0; i < arr.length; i++) {
setTimeout(function () {
console.log(arr[i])
}, 1000 * i)
}
</script>
此时控制台打印出来的如下图:
注意这里的是 let i=0;
<script>
var arr = ['1', '2', 'a', 'b', 'cde', '888']
for (let i = 0; i < arr.length; i++) {
setTimeout(function () {
console.log(arr[i])
}, 1000 * i)
}
</script>
let i=0; 则控制台显示的效果如下
如果代码中的setTimeout 方法后面的时间 1000*i 改成 1000 则是一秒内打印数组内的所有信息,效果如下