【发布时间】:2022-10-04 16:28:43
【问题描述】:
当我通过 setInterval 方法调用 cb 函数时,由 cb 函数返回的函数会在调用 cb 函数时自动调用,但是当我手动调用 cb 函数时,它会返回返回函数的原型。并且返回的函数不会被自动调用。
function cb() {
let count = 0;
return function() {
count++;
console.log(count);
}
}
setInterval(cb(), 1000);
【问题讨论】:
-
cb()在您第一次调用setInterval时被调用一次,并且返回的函数被注册为在每个间隔上调用。 “手动”调用它只是返回内部函数,为什么它会“自动”调用它?
标签: javascript memory-leaks setinterval