mirror of https://github.com/lukechilds/docs.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
32 lines
840 B
32 lines
840 B
var _curry2 = require('./internal/_curry2');
|
|
var _isNumber = require('./internal/_isNumber');
|
|
|
|
|
|
/**
|
|
* Returns a list of numbers from `from` (inclusive) to `to` (exclusive).
|
|
*
|
|
* @func
|
|
* @memberOf R
|
|
* @since v0.1.0
|
|
* @category List
|
|
* @sig Number -> Number -> [Number]
|
|
* @param {Number} from The first number in the list.
|
|
* @param {Number} to One more than the last number in the list.
|
|
* @return {Array} The list of numbers in tthe set `[a, b)`.
|
|
* @example
|
|
*
|
|
* R.range(1, 5); //=> [1, 2, 3, 4]
|
|
* R.range(50, 53); //=> [50, 51, 52]
|
|
*/
|
|
module.exports = _curry2(function range(from, to) {
|
|
if (!(_isNumber(from) && _isNumber(to))) {
|
|
throw new TypeError('Both arguments to range must be numbers');
|
|
}
|
|
var result = [];
|
|
var n = from;
|
|
while (n < to) {
|
|
result.push(n);
|
|
n += 1;
|
|
}
|
|
return result;
|
|
});
|
|
|