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

时间:2016-05-03 19:07:45

标签: javascript

是否可以创建循环但不使用内置的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.

1 个答案:

答案 0 :(得分:1)

以下是使用递归计时器函数重复某些代码的方法:

(function repeat(n){
  if (!n) return;
  console.log("do something");
  setTimeout(repeat, 0, n-1);
})(4);

与(非尾部优化)递归相反,此处没有累积内存消耗。 在某些情况下,这种结构很有用。但是,仅仅避开forwhile关键字并不会成为其中之一。