Javascript,setInterval在while循环之后开始?如何使它在while循环内部启动
Javascript, setInterval starts after while loop? how to make it start inside while loop?
我有一段javascript:
<script>
var i=1;
while(i<10){
setInterval(function(){
alert(i);
},1);
i++;
}
</script>
它提醒了10号而不是1号到10号。我预计setInterval
会提醒1到10号,并从1到10保持警惕。
神奇的词是闭包和作用域:
<script>
var i=1;
while(i<10){
(function(j) {
setTimeout(function(){
alert(j);
},1);
})(i);
i++;
}
</script>
简而言之,while循环在i
的值可以被提醒之前完成
也不是顺序,或缺乏小提琴:
FIDDLE
这只是猜测,但这是您想要的吗?
setInterval(function(){
var i=1;
while(i<=10){
alert(i);
i++;
}
},1);
实际情况是您要求计算机每毫秒运行一次嵌套的内部函数。你要求连续做十次,所以到最后,计算机应该每秒发送一万次警报。我很惊讶它没有消耗所有的CPU和内存,并导致致命的错误。
这将一直持续到您调用clearInterval()
,或者直到窗口关闭。
http://www.w3schools.com/jsref/met_win_setinterval.asp
相关文章:
- 基于两个条件退出While循环
- 希望日期开始结束于while循环中的一个房间id的一个数组
- 为什么我的While循环不起作用
- 使用while循环+break是一种可接受的方式;goto;手术的结束
- 如何将while循环中生成的值存储到变量中,以便以后在JQuery中使用
- jquery,while循环在后台运行,同时while循环
- jquery悬停和while循环
- Javascript:用while循环在给定的count参数中重复一个字符串
- 如何修复 while 循环
- Jquery扩展点的宽度,同时通过while循环递增
- 斐波那契序列Javascript做while循环
- 为什么这个while循环不能使用AND逻辑运算符
- bluebird promise的while()循环正确(无递归?)
- JavaScript while循环没有'不能在有条件的情况下工作
- While循环在JavaScript中永远运行
- 逻辑(JSint友好)等效于while循环中的此赋值
- Javascript:用if语句运行while循环,用子句随机生成内容
- 如何使javascript在SQL while循环中回显所有数据
- 使用ajax循环while中的多个表单
- JavaScript 中的无限循环 - while 循环