范围生成器

创建一个生成器,使用给定的步长生成给定范围内的所有值。

  • 使用while循环从startend进行迭代,使用yield返回每个值,然后按步长递增。
  • 如果省略第三个参数step,则使用默认值1
const rangeGenerator = function* (start, end, step = 1) {
  let i = start;
  while (i < end) {
    yield i;
    i += step;
  }
};

for (let i of rangeGenerator(6, 10)) console.log(i);
// 输出 6, 7, 8, 9