我正在开发一个非常独特的项目,并且有一个调用我的函数的变量,它可以在它进行1次函数调用之后将它放在哪里,它会停止工作并变得无用。
答案 0 :(得分:1)
var limiter = function (limit, cb) {
var counter = limit;
return function () {
if (counter > 0) {
cb(counter);
counter--;
}
};
};
var counting = limiter(3, function (data) {
console.log('This function can be used ' + data + ' more times.');
});
for (var i = 0; i < 5; i++) {
counting();
};
第一个参数调用限制器为1,第二个参数作为函数定义,只允许运行一次该函数。在这个例子中,我创建了函数'counting',它将记录它有多少次调用,直到它没用(它只运行三次,尽管for循环调用它五次)。底部的for循环只显示它有效。您还可以使用限制器创建多个函数,而不会使计数器重叠,因为它们各自都有自己独特的范围。