美文网首页
setTimeout的第一个参数

setTimeout的第一个参数

作者: MK_L | 来源:发表于2019-06-26 15:46 被阅读0次

问题引入

看如下一段js代码:

图一

如预期,控制台5s后输出testFn的字符串,当改动一个小地方后,

图二

然而,字符串的输出并没有延迟,而是立刻执行。这是怎么回事呢?~~

分析

图一和图二的代码看似区别不大却大有文章,一不小心就很可能犯错,两者含义并不相同。

1. setTimeout(fn, delay)

传入的fn是一个函数地址

2. setTimeout(fn(), delay)

传入的fn()指函数执行,而非函数地址

相关文章

  • 定时器

    参数问题 setTimeout(func|code, delay)第一个参数可以是函数名, setTimeout(...

  • 2019-01-07

    setTimeout的第一个参数为什么要写函数? 如果setTimeout第一个参数使用字符串而非函数的话,会引发...

  • setTimeout 三个参数

    setTimeout 参数 第一个参数,必选。code/function。第二个参数,可选。执行或调用 参数一 需...

  • 闭包的应用场景:SETTIMEOUT

    应用场景:SETTIMEOUT 原生的setTimeout有一个缺陷,你传递的第一个函数不能带参数。即 funct...

  • 初识eval()

    今天看到一个关于自执行函数和异步调用的问题 解释:首先了解setTimeOut。setTimeOut第一个参数只接...

  • 原来setTimeout还可以有第三个参数的

    setTimeout还可以有第三个参数的,第三个参数以后的参数就是作为第一个函数的参数传进去;function s...

  • setTimeout/setInterval

    setTimeout/setInterval常规使用方法(不带参数) setTimeout/setInterval...

  • Head First JavaScript笔记(三)

    单次定时器:setTimeout("alert('some thing!')",5000),第一个参数是定时器时间...

  • 2018-07-04

    1、setTimeout setInteval异同相同点:参数个数相同,都是两个,第一个参数为执行的js语句,第二...

  • React 高级课程之高阶组件

    高阶函数基本概念 函数可以作为参数传递 例如下面例子,setTimeout方法有2个参数,第一个参数是一个函数 函...

网友评论

      本文标题:setTimeout的第一个参数

      本文链接:https://www.haomeiwen.com/subject/wzhccctx.html