UNPKG

596 BJavaScriptView Raw
1var annotate = require('annotate');
2var is = require('annois');
3
4
5module.exports = annotate('range', 'Generates a range based on given `start`, `end` and `stride` values.').
6 on(is.number, is.number, is.number, range).
7 on(is.number, is.number, range).
8 on(is.number, range);
9
10
11function range(start, end, stride) {
12 if(stride < 1) {
13 return [];
14 }
15
16 stride = stride || 1;
17
18 if(!is.defined(end)) {
19 end = start;
20 start = 0;
21 }
22
23 var ret = [];
24
25 for(var i = start, len = end; i < len; i += stride) {
26 ret.push(i);
27 }
28
29 return ret;
30}
31