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

为什么在使用setTimeout时立即执行该方法?

方和豫
2023-03-14
问题内容

我正在尝试使用编写一个简单的代码setTimeout,但是setTimeout只是不愿等待它假定的时间而代码立即执行。我究竟做错了什么?

setTimeout(testfunction(), 2000);

问题答案:

您正在立即调用该函数并计划其返回值。

使用:

setTimeout(testFunction, 2000);
                       ^

注意:没有原谅。



 类似资料:
  • 问题内容: 这是我的问题。我具有此功能来测试代理服务器。 我希望在大约10秒钟的间隔内调用“ doRequest()”函数,但是即使使用setTimeout(),这些函数也会立即被调用。 任何想法都欢迎,谢谢。 PS:即使我为’proxytimout’设置了任意值,也没有效果。 问题答案: 以这种形式将函数提供给setTimeout时,将执行该函数,而不是将其传递给setTimeout。您有三种选

  • 问题内容: 这是我第一次真正接触JavaScript。当然,我曾经使用过它,但是我从未真正写过任何东西。 无论如何,我遇到了一个非常奇怪的问题,希望有人可以帮我解决。 我正在尝试使div的文本从黑变白。很简单,是吗? 以下代码 有效 。它将颜色更改为白色,但是,忽略了500ms的setTimeout时间。 如果您使用Chrome浏览器并查看JS控制台,您将很容易看到doFade()方法几乎是即时调

  • 问题内容: 如何从此代码获得结果 通过 for循环 通常的方法是这样的 问题答案: 如果您 确实 需要 动态表名 ,那么我可能会选择 记录 类型: 结果集的 类型(它是一个 记录 数组): 执行选择并返回 结果集 实例的函数: 然后,该函数可以与类似的东西一起使用:

  • 我在下面的查询中遇到了一个错误,它给出了一个符号(在使用循环的行中)。我正在尝试开发一个函数,该函数将动态参数作为表名、列名、表id,并用于其他表。

  • 问题内容: 我有一个包含10个元素的div,这些元素将被逐个更新,延迟时间为2秒。下面是相同的代码 但是,当我运行它时,所有元素都会一起更新。该程序只是添加一个延迟添加一个开始,并且所有元素都一起更新(被标记)。如何制作代码来逐一标记元素? 问题答案: 您正在打破React的两个基本规则: 不要直接改变状态 如果根据现有状态更新状态,请使用回调形式,因为状态更新可能是异步的(无论如何,在您的示例中

  • 问题内容: 和之间有什么区别 ? 问题答案: 从根本上说,它们执行相同的操作,这是提供一种在PL / SQL中执行DDL语句的机制,这是本机不支持的。如果内存对我有用,那么在Oracle 7版本的DBMS_UTILITY软件包中可以使用EXEC_DDL_STATEMENT,而在8中仅引入本机动态SQL(EXECUTE IMMEDIATE)。 有一些区别。EXECUTEIMMEDIATE主要是关于执