JavaScript学习笔记整理_setTimeout的应用

前端之家收集整理的这篇文章主要介绍了JavaScript学习笔记整理_setTimeout的应用前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

setTimeou的t应用

函数安排到执行队列中,而不会延迟。

// 用法
var myEfficientFn = delayFun (function() {
// 所有繁重的操作
},250);
window.addEventListener('resize',myEfficientFn);

函数不允许回调函数在指定时间内执行多于一次。当为一个会频繁触发的事件分配一个回调函数时,该函数显得尤为重要。

setTimeout这么厉害,那么我们是可以在项目中大量使用吗?

我个人是不建议的,在我们业务中,基本上是禁止在业务逻辑中使用setTimeout的,因为我所看到的很多使用方式都是一些问题不好解决,setTimeout作为一个hack的方式。

例如,当一个实例还没有初始化的前,我们就使用这个实例,错误解决办法是使用实例时加个setTimeout,确保实例先初始化。

为什么错误?这里其实就是使用hack的手段

第一是埋下了坑,打乱模块的生命周期

第二是出现问题时,setTimeout其实是很难调试的。

我认为正确的使用方式是,看看生命周期(可参考《关于软件的生命周期 》),把实例化提到使用前执行

以上就是小编为大家带来的JavaScript学习笔记整理_setTimeout的应用的全部内容了,希望对大家有所帮助,多多支持编程之家~

猜你在找的JavaScript相关文章