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

setTimeout中的函数不起作用

申博厚
2023-03-14
问题内容

有两个函数hello1()和hello2()。

function hello1(){
    console.log('hello1');
}

function hello2(){
    console.log('hello2');
}

setTimeout(hello1, 3000);
setTimeout(hello2(), 3000);

在中setTimeout(hello1, 3000);,延迟3秒后打印“ hello1”。

但是在中setTimeout(hello2(), 3000);,它会立即打印“ hello2”。

我认为是因为它必须在setTimeout中使用函数名称。

如果我想在延迟3秒后执行带有参数的函数hello(1)怎么办?

因为我想将参数传递给函数,所以我不能只在setTimeout中使用函数名,例如 setTimeout(hello1, 3000);


问题答案:

当对函数使用括号时,将setTimeout立即执行。

要将函数与参数一起使用,可以将任意函数用作超时函数,并在其中调用函数。

setTimeout(function() {
    hello(1, 'param');
}, 3000);


 类似资料:
  • 问题内容: 以下代码从文件加载html内容我使用了该线程 请让我知道问题是什么?我希望这是愚蠢的:) 编辑:正确的代码 谢谢乔恩和大家! 问题答案: callback()函数在响应到达时运行,并且不在方法范围内运行,因为该函数已经结束。 您可以在调用中使用属性来设置回调函数的上下文:

  • 问题内容: 嗨,我尝试在POST请求中尝试PHPPost请求,认为这可能对我有用,下面给出了我的代码 形成index.php文件,而index2.php是同一目录中的另一个文件,当我打开页面时,我的error.log文件中出现以下错误 我想要做的是我有一个发送发帖请求的预订表格,然后我想处理发帖值并再次将发帖请求发送到贝宝 问题答案: 您需要为php安装CURL支持。 在Ubuntu中,您可以通过

  • 问题内容: Oracle-函数不起作用 所以我不知道我在做什么错。我已经花了几个小时了,非常感谢您的帮助。 因此,基本上我有2个表,一个表被称为主列表,它是一个学生列表,另一个表被调用,它基本上具有该学生所注册课程的列表。 因此,我编写了一个函数,用于将登录学生的用户名(在本例中为)与学生列表进行比较,并确保登录用户是学生。然后,它将与表进行比较,以查找用户注册的任何程序。因此,从本质上讲,当我(

  • 问题内容: 在我的Web应用程序中使用codeigniter。我正在尝试使用base_url()函数,但显示为空结果。我也通过自动加载文件使用了自动加载帮助器,但是它似乎也不起作用。我也定义了基本常数,但是都没有用。 问题答案: 为了使用,您必须首先加载URL Helper。可以在第67行(或第67行附近)完成此操作: 或者,手动: 加载后,请切记不要隐式打印或回显任何内容,而是返回要打印的值:

  • 问题内容: 我的html像这样 jQuery代码如下 当我单击Submit按钮时,我的ajax请求无法正常工作,看起来好像控件正在传递给JQuery Submit函数,但是ajax请求没有正确执行/正常工作,这是怎么回事? 问题答案: 将事件处理函数放入$(document).ready(function(){…})中。它现在应该工作 还添加preventDefault()以限制页面刷新

  • 我试图弹出的对话窗口在Netbean 8.0.2 Primeface如图所示http://www.primefaces.org/showcase/ui/overlay/dialog/basic.xhtml 我在我的项目中添加了primefaces-5.3.jar,但是当我键入PF时,例如: 什么也没有发生,它向我显示了一些错误:全局变量“PF”没有声明。 请帮帮我。