如何在for循环中使用setTimeout方法?
发布于 4 年前 作者 chaoren 1692 次浏览 来自 问答
粉丝福利 : 关注VUE中文社区公众号,回复视频领取粉丝福利

请教大家一个问题。想每秒输出list里面的一个数据。不用let怎么做?代码如下。
export default {
data () {
return {
list:[1,2,3,4]
}
},
mounted(){
for (var i=0;i<this.list.length;i++){
window.setTimeout(()=>{
console.log(this.list[i])
},i*1000)
}
}
}
但是会出现setTimeout里面的list是undefined。不知道如何解决(如果不把for循环中的var改成let的话,还有没有其他办法)。求高手指点,谢谢。

回到顶部