equal
deleted
inserted
replaced
|
1 /** |
|
2 * @param {number} start |
|
3 * @param {number=} stop |
|
4 * @param {number=} step |
|
5 */ |
|
6 d3.range = function(start, stop, step) { |
|
7 if (arguments.length < 3) { |
|
8 step = 1; |
|
9 if (arguments.length < 2) { |
|
10 stop = start; |
|
11 start = 0; |
|
12 } |
|
13 } |
|
14 if ((stop - start) / step == Infinity) throw new Error("infinite range"); |
|
15 var range = [], |
|
16 i = -1, |
|
17 j; |
|
18 if (step < 0) while ((j = start + step * ++i) > stop) range.push(j); |
|
19 else while ((j = start + step * ++i) < stop) range.push(j); |
|
20 return range; |
|
21 }; |