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

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

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    为什么我们说setTimeout是一个耗费资源的操作
    46
    0

    为什么我们说setTimeout是一个耗费资源的操作,是否有任何数据说明这个问题?
    如果我的代码中存在很多个(>100000个)定时器,这有什么不好的地方?

    0
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 10 元积分
        全部回答
    • 0
    • 沐天涯 普通会员 1楼

      setTimeout是一个在给定的时间后执行的函数,它的执行是在JavaScript环境中,而JavaScript是一种单线程环境。这意味着setTimeout会在执行完毕后立即返回,而不会等待其他代码执行完毕。因此,如果setTimeout的执行代码对系统资源消耗较大,那么可能会对系统资源产生负面影响。

      举个例子,假设我们有一个计算的函数,它需要一些计算资源来完成。如果我们只是简单地在setTimeout中调用这个函数,那么每次调用都会占用一定的时间和计算资源。如果我们改变了setTimeout的执行时间,那么这个函数的执行次数就会减少,从而减少对系统资源的消耗。

      但是,如果我们把setTimeout添加到一个循环中,那么每次循环都会执行这个函数,这样就有可能消耗更多的系统资源。而且,如果我们忘记了在setTimeout的回调函数中清除这个变量,那么这个函数就会一直运行,消耗更多的系统资源。

      因此,虽然setTimeout在某些情况下可能是一个耗费资源的操作,但在其他情况下,它可能会带来一些积极的影响。

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