Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Download
80742 views
1
/* Native method references for those with the same name as other `lodash` methods. */
2
var nativeMax = Math.max,
3
nativeMin = Math.min;
4
5
/**
6
* Checks if `n` is between `start` and up to but not including, `end`. If
7
* `end` is not specified it is set to `start` with `start` then set to `0`.
8
*
9
* @static
10
* @memberOf _
11
* @category Number
12
* @param {number} n The number to check.
13
* @param {number} [start=0] The start of the range.
14
* @param {number} end The end of the range.
15
* @returns {boolean} Returns `true` if `n` is in the range, else `false`.
16
* @example
17
*
18
* _.inRange(3, 2, 4);
19
* // => true
20
*
21
* _.inRange(4, 8);
22
* // => true
23
*
24
* _.inRange(4, 2);
25
* // => false
26
*
27
* _.inRange(2, 2);
28
* // => false
29
*
30
* _.inRange(1.2, 2);
31
* // => true
32
*
33
* _.inRange(5.2, 4);
34
* // => false
35
*/
36
function inRange(value, start, end) {
37
start = +start || 0;
38
if (typeof end === 'undefined') {
39
end = start;
40
start = 0;
41
} else {
42
end = +end || 0;
43
}
44
return value >= nativeMin(start, end) && value < nativeMax(start, end);
45
}
46
47
module.exports = inRange;
48
49