利用js语言写一个通用的节流函数。
时间: 2023-04-11 09:01:30 浏览: 43
好的,我可以回答这个问题。以下是一个通用的节流函数的示例代码:
```
function throttle(func, delay) {
let timerId;
return function(...args) {
if (!timerId) {
timerId = setTimeout(() => {
func.apply(this, args);
timerId = null;
}, delay);
}
};
}
```
这个函数接受两个参数,第一个参数是要节流的函数,第二个参数是节流的时间间隔。当调用这个函数时,它会返回一个新的函数,这个新函数会在指定的时间间隔内最多执行一次原始函数。这个函数可以用于优化一些频繁触发的事件,比如滚动、拖拽等。
相关问题
使用js语言写一段节流函数
以下是使用 JavaScript 语言写的一段节流函数的示例:
```
function throttle(func, wait) {
let timer = null;
return function () {
if (!timer) {
timer = setTimeout(() => {
func.apply(this, arguments);
timer = null;
}, wait);
}
};
}
```
这个函数的作用是对另一个函数进行包装,在指定的时间间隔内,该函数只会被调用一次。示例中的 `wait` 参数是时间间隔,以毫秒为单位,`func` 参数是需要被节流的函数。
写一个js节流函数代码
好的,以下是一个简单的js节流函数代码:
```
function throttle(func, delay) {
let timerId = null;
return function() {
if (!timerId) {
timerId = setTimeout(() => {
func.apply(this, arguments);
timerId = null;
}, delay);
}
};
}
```
这个函数接受两个参数:需要执行的函数和延迟时间(以毫秒为单位)。在延迟时间内,只会执行一次函数。