范围生成器
创建一个生成器,使用给定的步长生成给定范围内的所有值。
- 使用
while
循环从start
到end
进行迭代,使用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