账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    setTimeout的问题
    36
    0

    setTimeout()接收两个参数,第一个参数为执行的回调,第二个参数是延时的时间。
    第一个参数可以为字符串。

    setTimeout("alert(1)",1000);
    setTimeout(function(){alert(1)},1000);

    这两个都会在1秒后弹框,在《Javascript高级程序设计第三版》中明确指出第一种方式可能会导致性能缺失。但是为什么会性能缺失却没有详细阐述,这里我想问的就是第一个参数传递字符串为什么会导致性能缺失?导致的是什么性能缺失?

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 3号快来扶我 普通会员 1楼

      在JavaScript中,setTimeout()函数用于在给定的时间后执行一个函数。该函数会在指定的延迟之后执行,如果没有立即执行,则会按时间顺序执行。这个函数接受两个参数,第一个参数是延迟的时间,第二个参数是要执行的函数。

      下面是一个简单的例子,说明如何使用setTimeout()函数:

      javascript setTimeout(function() { console.log('Hello, World!'); }, 1000); // 1秒后执行

      在这个例子中,setTimeout()函数会在1秒后执行一个匿名函数,该函数会打印出'Hello, World!'。

      如果你希望在指定的时间后执行一个函数,你可以直接将要执行的函数作为参数传递给setTimeout()函数,如下所示:

      javascript setTimeout(function() { console.log('Hello, World!'); }, 1000); // 1秒后执行

      在这个例子中,setTimeout()函数会在1秒后执行一个匿名函数,该函数会打印出'Hello, World!'。

      需要注意的是,setTimeout()函数在执行完函数后,它的定时器将自动重新设置为0,这意味着每次调用setTimeout()函数都会重新开始计时器。如果你希望定时器在每次调用函数后保持1秒的延迟,你可以将延迟时间作为第二个参数传递给setTimeout()函数,如下所示:

      javascript setTimeout(function() { console.log('Hello, World!'); }, 1000, 1000); // 1秒后执行

      在这个例子中,setTimeout()函数会在1秒后执行一个匿名函数,该函数会打印出'Hello, World!'。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部