1 | export function range(start, end){
|
2 | if (arguments.length === 1) return _end => range(start, _end)
|
3 |
|
4 | if (Number.isNaN(Number(start)) || Number.isNaN(Number(end))){
|
5 | throw new TypeError('Both arguments to range must be numbers')
|
6 | }
|
7 |
|
8 | if (end < start) return []
|
9 |
|
10 | const len = end - start
|
11 | const willReturn = Array(len)
|
12 |
|
13 | for (let i = 0; i < len; i++){
|
14 | willReturn[ i ] = start + i
|
15 | }
|
16 |
|
17 | return willReturn
|
18 | }
|