我有一个作业,应该在JavaScript中编写一个伪随机数生成器。这是我写的代码位

var k = 0;

var slump = function(n, k) {
  if (k < 10) {
  console.log("stop");
  }
  else {
    k++;
    console.log((5*n + 1) % 8);
    return slump((5*n + 1) % 8, k);
  }
};

slump(0);


k应该保留函数被调用的次数。但是,它不会一直运行十次,而是会继续运行。有什么办法可以解决这个问题?

最佳答案

功能参数k未初始化,因此不是数字。这尤其意味着终止测试k < 10失败,并且k++语句不会更改k的值。因此,对于参数k,总是以相同的值调用坍落度,并且递归永远不会停止。

关于javascript - 计算一个函数在JS中递归调用的次数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28505083/

10-11 22:45
查看更多