当前位置: 移动技术网 > IT编程>开发语言>JavaScript > js异步执行(setTimeout)遇到的坑

js异步执行(setTimeout)遇到的坑

2019年03月24日  | 移动技术网IT编程  | 我要评论
js异步执行(settimeout)遇到的坑 for(var i=0;i<5;i++){ var f=settimeout(function(){ c

js异步执行(settimeout)遇到的坑

for(var i=0;i<5;i++){
			var f=settimeout(function(){
				console.log(i);
			},i*1000);
			console.log(f);
		}

上面代码输出:

1

2

3

4

5

5个5,每隔1s输出一次

1,2,3,4,5是f的循环输出,也是settimeout的返回值,返回值从1开始,每执行1次,返回值加1

5个5是因为异步执行的原因,每隔1s输出一次,是因为i*1000是在for循环时就执行了的,不属于异步执行的范围。

如您对本文有疑问或者有任何想说的,请 点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网