for循环中的setTimeout
- May 20, 2019
- aaaaaAndy
1. 错误示例
1
2
3
4
5
6
7
function print() {
for (var i = 0; i < 10; i++) {
setTimeout(() => {
console.log(i);
}, 1000);
}
}
上面的代码,我们期望每隔一秒,输出一个数,而且这个数是每次循环i的值。但是期望也只是期望,实际情况是一秒钟之后直接输出了10个10。那么问题就来了,我们怎么实现我们的期望值呢?
由此我们先来尝试几种解决方案,并作一一对比:
* 每隔一秒输出一个10
1
2
3
Continue reading