原因
网上很多节流函数都是可以实现一段时间内只能执行一次,但第一次点击时需要等待后才会执行
解决方案
使其在触发函数时能够判断是否需要立即执行
const throttleStart = (func, wait) => {// 定义全局变量let timer;let firstTime = true;// 返回一个函数return function () {// 如果是第一次调用if (firstTime) {// 调用原函数,并将参数传递进去func.apply(this, arguments);// 将firstTime设为false,表示已经调用过一次firstTime = false;} else {// 如果timer为空if (!timer) {// 调用原函数,并将参数传递进去func.apply(this, arguments);// 设置一个定时器,等待指定时间后执行回调函数timer = setTimeout(() => {timer = null;}, wait);}}};
}