Javascript—是否可以使用函数进行循环?

Javascript—是否可以使用函数进行循环?,javascript,Javascript,是否可以创建一个循环,但不使用内置的Javascript循环,如while、for和do?另外,我希望避免递归以节省内存 我想这需要巧妙地调用一个函数,让它退出,然后再次调用它,直到满足条件为止 编辑:添加示例 var i = 0; var condition = false; function loop() { i++; if (i >= 3) { condition = true; } } loop(); //somehow keep calli

是否可以创建一个循环,但不使用内置的Javascript循环,如while、for和do?另外,我希望避免递归以节省内存

我想这需要巧妙地调用一个函数,让它退出,然后再次调用它,直到满足条件为止

编辑:添加示例

var i = 0;
var condition = false;
function loop() {
    i++;
    if (i >= 3) {
        condition = true;
    }
}
loop(); //somehow keep calling until condition is met.

下面是如何使用递归计时器函数重复一些代码:

(function repeat(n){
  if (!n) return;
  console.log("do something");
  setTimeout(repeat, 0, n-1);
})(4);
与(非尾部优化的)递归相反,这里没有累积内存消耗。
这种构造在某些情况下很有用。但是只要避免使用
for
,而
关键字不会作为其中一个关键字出现。

要调用函数,请退出,然后再次调用,您需要。。。循环。你的意思是像
array.forEach()
?还是你在问其他语言中的生成器?请澄清你的问题,说明你想如何使用此循环功能?您的问题目前太模糊,无法给出一个好的答案。这看起来像是一个递归的教科书示例。从问题:“我也想避免递归以节省内存。”这就是我要找的。我想要一个在不累积内存消耗的情况下重新运行的函数。