高阶节流:`闭包` + `return数据` + `传参`
Posted 春风自是人间客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了高阶节流:`闭包` + `return数据` + `传参`相关的知识,希望对你有一定的参考价值。
<script>
var resultValue = "1";
function throttle(fn) {
console.log(arguments);
let params = Array.from(arguments);
params.shift();
let res = arguments[arguments.length - 1];
params.pop();
let canRun = true;
return () => {
if (!canRun) return;
canRun = false;
setTimeout(() => {
canRun = true;
window[res] = fn.apply(this, params);
console.log(resultValue);
return res;
}, 2000);
};
}
function sayHi(value1, value2) {
console.log(value1, value2);
return "result=======";
}
var x = throttle(sayHi, 1, 2, "resultValue");
setInterval(() => {
x();
}, 500);
</script>
以上是关于高阶节流:`闭包` + `return数据` + `传参`的主要内容,如果未能解决你的问题,请参考以下文章