UNPKG

418 BJavaScriptView Raw
1export 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}