为了账号安全,请及时绑定邮箱和手机立即绑定

定时器的自调用可能造成的内存开销以及怎么终结?

有一个问题:showTime无限自调用会不会给内存造城压力,还有lefttime到0的时候怎么终结自调用呢??

正在回答

1 回答

       第一个问题,这个循环是每隔500毫秒触发一次的,只是定时任务而非死循环,是有本质区别的;如果是死循环是会造成内存泄漏的;而你说的内存压力问题,现代电脑也好、浏览器本身也好,性能都已经足够优越,这么简单的定时器任务不会给定时器造成任何压力的。

       换个角度想想,现在越来越多的复杂任务放到前端解决、包括越来越丰富的渲染效果,这些任务都要比这么一个简单的周期性执行的简单代码占用资源多的多。

        第二个问题,在showtime里使用setTimeout()再次调用自身前,先判断lefttime是否已经<=0了,如果已经<=0,设置文字变成“团购结束”并return,这样就不会再次调用showtime,调用链终止。

1 回复 有任何疑惑可以回复我~
#1

frgo_03360772 提问者

非常感谢!
2016-06-11 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
倒计时效果
  • 参与学习       55626    人
  • 解答问题       242    个

电商网站限时抢购倒计时效果计算思路和方法,前端开发必备技术

进入课程

定时器的自调用可能造成的内存开销以及怎么终结?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信