如何在JavaScript中的setInterval函数中添加条件检查

How to add condition check in setInterval function in JavaScript?

本文关键字:添加 条件 检查 函数 setInterval JavaScript 中的      更新时间:2023-09-26

例如,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函数中添加条件检查的正确方法是什么?

它被困在while循环中。在setInterval中使用return来阻止代码执行,除非满足条件。

while的问题是它一直在循环,从不离开循环,从而为任何其他调用释放线程。