Skip to main content

range()

range(start?, end?, step?): Generator<number>

Defined in: src/Range.ts:24

Creates a generator of numbers.

Without end the range is endless (combine it with take). With end the direction is taken from start and end; the default step is 1 for an ascending range and -1 for a descending one. An explicit step that points away from end gives an empty range; a step of 0 throws a RangeError when the iteration starts.

Parameters​

start?​

number = 0

the first number, inclusive; defaults to 0

end?​

number

the end of the range, exclusive; omit for an endless range

step?​

number

the distance between numbers

Returns​

Generator<number>

a generator of numbers

Example​

[...range(0, 3)]; // => [0, 1, 2]
[...range(0, 10, 5)]; // => [0, 5]
[...range(3, 0)]; // => [3, 2, 1]
[...range(0, 5, -1)]; // => []
await chain(range(1)).take(3).toArray(); // => [1, 2, 3]