例如,JavaScript代码如下:
<!DOCTYPE html>
<html>
<body>
<script>
var val = 0;
var p2 = setInterval(function(){proc2()},1000);
function proc2()
{
// while (val == 0);
alert(val);
clearInterval(p2);
}
var p1 = setInterval(function(){proc1()},1000);
function proc1()
{
val = 1;
clearInterval(p1);
}
</script>
</body>
</html>
在函数proc2()
中,我希望在val
的值设置为1时执行它。因此,我添加while(val==0);
行,但它不起作用。浏览器卡住了。有什么问题呢?在JavaScript中的setInterval函数中添加条件检查的正确方法是什么?
答案 0 :(得分:0)
它陷入了while循环。在setInterval中使用return来预防代码执行,除非满足条件。
while的问题在于它一直循环并且永远不会离开循环,释放线程以进行任何其他调用。