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

js setTimeout在双重for循环中如何使用?

js setTimeout在双重for循环中如何使用?

PIPIONE 2018-11-22 18:15:20
日志中不打印的数字一样要占用时间,为什么,如何解决?<script>function resort(){    for (let i = 0; i < 10; i++) {        for (let j = 0; j < 10 - i; j++) {            setTimeout(function(){                console.log(i*10 + j);            },(i*10+j)*500);        };    };}resort();</script>
查看完整描述

1 回答

?
元芳怎么了

TA贡献1798条经验 获得超7个赞

也是和for循环里面的闭包一样吧,在外面包一层立即执行函数

function resort(){

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

        for (let j = 0; j < 10 - i; j++) {

          (function(a,b){

            setTimeout(function(){

                console.log(a*10 + b);

            },(a*10+b)*500);

          })(i,j)

        };

    };

}

resort();


查看完整回答
反对 回复 2018-12-25
  • 1 回答
  • 0 关注
  • 769 浏览
慕课专栏
更多

添加回答

举报

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