为了账号安全,请及时绑定邮箱和手机立即绑定

for循环里面加上setTimeout,不用闭包的方法怎么让他挨个返回12345的数字?

for循环里面加上setTimeout,不用闭包的方法怎么让他挨个返回12345的数字?

Qyouu 2019-03-07 10:15:08
  for(var i =0;i<5;i++){        setTimeout(function () {            console.log(i);  //输出5个5 ,不用闭包,也不用let,怎么改改让他输出12345?        },0)    }
查看完整描述

5 回答

?
万千封印

TA贡献1891条经验 获得超3个赞

把var改成let 
let申明的变量具有块级作用域.

查看完整回答
反对 回复 2019-03-19
?
翻阅古今

TA贡献1780条经验 获得超5个赞

for(let i=0;i<5;i++){

    setTimeout(function(){

        console.log(i);//0,1,2,3,4

    },0)

 }


查看完整回答
反对 回复 2019-03-19
  • 5 回答
  • 0 关注
  • 785 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信