While循环使数组不可用

sev*_*een -1 javascript

我有以下代码

function slotCalc(a, b) {
  var array = ["default"];
  while (a < b) {
    var obj = { test: "test" };
    array.push(obj);
    b++;
  }
  return array;
}
Run Code Online (Sandbox Code Playgroud)

我不明白为什么不返回数组。如果删除while循环,则按预期返回。

while循环如何执行此操作?

one*_*men 9

该错误源于b++;-因此,您(无限地)增加b,但a不会改变。因此,b > a除非使用以下参数调用此函数,否则始终如此a >= b

也许您想要a++;代替;要么,b--;