| 136 | export function range(stop: number): number[] |
| 137 | export function range(start: number, stop: number, step?: number): number[] |
| 138 | export function range(...args: any): number[] { |
| 139 | let start: number, stop: number, step: number |
| 140 | |
| 141 | if (args.length === 1) { |
| 142 | start = 0 |
| 143 | step = 1; |
| 144 | ([stop] = args) |
| 145 | } |
| 146 | else { |
| 147 | ([start, stop, step = 1] = args) |
| 148 | } |
| 149 | |
| 150 | const arr: number[] = [] |
| 151 | let current = start |
| 152 | while (current < stop) { |
| 153 | arr.push(current) |
| 154 | current += step || 1 |
| 155 | } |
| 156 | |
| 157 | return arr |
| 158 | } |
| 159 | |
| 160 | /** |
| 161 | * Move element in an Array |