当前位置: 首页 > 面试题库 >

JavaScript setTimeout()是否会等待执行?

穆正青
2023-03-14
问题内容

考虑以下示例:

<script type="text/javascript">
    function alertBox(){
        alert('Hello World!');
    }
    function doSomething(){
        setInterval(alertBox(), 5000); //This is for generic purposes only
    };
    function myFunction(){
        setTimeout(doSomething(),3000);
    };

    myFunction();
</script>

是什么导致该执行 立即 ,而不是等待3秒为单位设置,以及只执行警戒 ONCE ,而不是在计划每隔5秒?

感谢您的任何帮助,您可以提供!

石匠


问题答案:
alertBox()

这看起来不像立即调用函数吗?

尝试传递函数(不执行):

setInterval(alertBox, 5000);


 类似资料:
  • 问题内容: 我正在将JSHint用于JavaScript项目(带有Visual Studio Code)。在此项目中,我使用async / await,JSHint将其突出显示为错误。 我尝试设置jshint,但似乎“ esversion”的最大版本为6。 jshint支持异步/等待吗?如果可以,如何打开它?如果没有,是否有任何解决方法? 问题答案: 更新(2019年2月) :从2.10.1版本开

  • 由于我在堆栈中使用Vertx3.1,我想使用这些工具带来的未来特性,但在阅读后,API似乎对我来说相当有限。我甚至找不到方法让未来等待一个可观察的。这里是我的代码 在我第一次观察到的onComplete中,我正在检查结果,在finish之后是当我完成以后解除阻塞的操作。但是我正在寻找未来。结果不会被阻止,直到未来。完成像我期望的那样被调用。而是返回null。 问候。

  • 问题内容: 我有一个Python程序,该程序通过 PySerial 模块从串行端口读取数据。我需要牢记的两个条件是:我不知道会有多少数据到达,并且我也不知道何时需要数据。 基于此,我提出了以下代码段: 因此,此代码将永远循环以从串行端口获取数据。我们最多可以存储500个字符,然后通过设置一个标志来警告主循环。如果没有数据,我们将回到睡眠状态并等待。 该代码正在运行,但是我不喜欢5s超时。我需要它是

  • 问题内容: 我写了一个永远不会停止的测试应用程序。它发出(是一个对象),但是我从不打电话通知。为什么此代码结束?尽管主线程在上同步,但生成的线程仍在运行,因此不会锁定该对象。 结果是主线程等待5秒钟,在此期间工作人员提供其输出。然后,在5秒钟后,程序退出。不等。如果主线程在5秒钟内没有进入睡眠状态(对此行进行了注释),则实际上将等到工作人员完成操作。当然,这里是一种使用方法,但是,出乎意料的是,它

  • 它是100%保证的线程,首先得到wait_for_completion_timeout会唤醒第一次调用完成?也许我错了,但是我看了下面的场景:线程A调用wait_for_completion_timeout并进入睡眠。当完成被调用时,它醒来并完成执行在函数do_wait_for_common。现在假设另一个线程B调用wait_for_completion_timeout. x- 然后继续睡觉。所以

  • 然后我有了调用webAPI的dataLayer,它看起来像这样。为了简单起见,我直接使用。result。 我的问题是,我看到一些教程说我们应该避免使用。result,因为它可能会导致死锁。我不确定在我的情况下是否需要使用Async/await?如果我确实需要,我知道我应该一直异步,但我确实希望我的controlLayer是同步的,因为我有其他层调用controlLayer的函数,我不希望所有层的函