gpt4 book ai didi

javascript - javascript中setInterval函数的闭包

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:51:50 26 4
gpt4 key购买 nike

如何在不使用全局变量的情况下使用setInterval?我更愿意将 setInerval 调用的函数的所有变量包装在某种闭包中,如下所示:

var wrap = function (f){
var local1, local2, ...;
return function () { return f(); }
}

这行不通,但我的想法是我将 wrap(f) 而不是 f 传递给 setInterval,所以f 的局部变量被很好地包装并且不会污染全局范围。

最佳答案

javascript 没有动态绑定(bind)。(this 关键字除外)

使用匿名函数可以存档你的想法。 (它称为关闭)

var fnc = function(){
var local1, local2;

return function(){
// using local1, local2
}
};

setInterval(fnc, 1000);

关于javascript - javascript中setInterval函数的闭包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11800436/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com