原文:js经典面试问题:如何让for循环中的setTimeout()函数像预想中一样工作?

setTimeout 是js中的一类重要函数,将一段代码延迟一定时间并异步执行。但是这个函数经常不听话。在实践中,可能经常有人碰到类似下面的这种情况: 我们期望的结果是,先隔 毫秒弹出 ,再隔 毫秒弹出 。但是跑起来后,alert的两次内容都是数字 ,而且紧挨着输出,并不是自己所期望的先 后 。有一种很基础的面试题是,如何合理改动代码,使它返回期望的结果 其实很简单。在stackoverflow上 ...

2017-02-18 10:10 0 19631 推荐指数:

查看详情

浅谈循环中setTimeout执行顺序问题

浅谈循环中setTimeout执行顺序问题 (下面有见解一二) 期望:开始输出一个0,然后每隔一秒依次输出1,2,3,4。 结果:输出5。 原因:setTimeout 使函数延迟1s执行,而for循环执行完成还不到0.1秒,到执行函数的时候,其实 i 已经 ...

Fri Apr 12 03:37:00 CST 2019 0 1365
for循环中setTimeout()

的任务【闭包函数setTimeout()中的函数开始执行,执行三次】。 for循环是遵循js执行机制 ...

Tue Sep 24 03:33:00 CST 2019 0 721
测试经典面试问题:一个项目从0到1,你需要做哪些工作工作的重点是什么?

最近在论坛上看到一位朋友问到这个问题,我觉得很经典,一般二面(leader级别)都相对喜欢问这种问题,我曾经既在面试中被问过这个问题,也在后来做面试官的时候问过别人这个问题,所以正好给大家分析下这个问题、答案,还有实际的一些落地经验。 作为应聘者,在回答这个问题之前,我们要明确一点 ...

Sun Aug 09 20:19:00 CST 2020 0 1020
JS中For循环中嵌套setTimeout()方法的执行顺序

在For循环中执行setTimeOut()方法的代码,执行顺序是怎样的呢? 代码如下 应该会有人会说,很简单呀,for循环进行遍历,并且每次有一个输出,那结果应该是0,1,2,3,4。 其实不然,运行上诉代码之后,控制台输出如下:5个5 下面解释下为什么是5个5. ...

Tue Dec 10 21:59:00 CST 2019 0 1367
js for 循环中的 变量问题

今日处理项目中的一个循环,本来就是一个小小的for循环,后来发现该段程序出现了问题,仔细检查代码没有发现其中的错误。无奈只好叫来了老大帮忙。通过在模版中断点调试(该方式只能自己写debugger断点)我们找到了问题的所在。首先看我们的循环: 这是一个很简单的嵌套循环,但问题出在 ...

Tue Apr 21 04:41:00 CST 2015 0 4427
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM