20 lines
260 B
JavaScript
20 lines
260 B
JavaScript
function *range(max, step) {
|
|
var count = 0;
|
|
step = step || 1;
|
|
|
|
for (var i = 0; i < max; i += step) {
|
|
count++;
|
|
yield i;
|
|
}
|
|
|
|
return count;
|
|
}
|
|
|
|
var gen = range(20, 3), info;
|
|
|
|
while (!(info = gen.next()).done) {
|
|
info.value;
|
|
}
|
|
|
|
assert(info.value, 7);
|