tightened code for clampnumber
clampNumber is now a single line function
This commit is contained in:
@ -1,16 +1,13 @@
|
|||||||
### clampNumber
|
### clampNumber
|
||||||
|
|
||||||
Clamps `num` within the inclusive `lower` and `upper` bounds.
|
Clamps `num` within the inclusive range specified by the boundary values `a` and `b`
|
||||||
|
|
||||||
If `lower` is greater than `upper`, swap them.
|
|
||||||
If `num` falls within the range, return `num`.
|
If `num` falls within the range, return `num`.
|
||||||
Otherwise, return the nearest number in the range.
|
Otherwise, return the nearest number in the range.
|
||||||
|
|
||||||
```js
|
```js
|
||||||
const clampNumber = (num, lower, upper) => {
|
const clampNumber = (num, a, b) => Math.max(Math.min(num, Math.max(a,b)),Math.min(a,b));
|
||||||
if (lower > upper) upper = [lower, lower = upper][0];
|
|
||||||
return (num >= lower && num <= upper) ? num : ((num < lower) ? lower : upper);
|
|
||||||
};
|
|
||||||
// clampNumber(2, 3, 5) -> 3
|
// clampNumber(2, 3, 5) -> 3
|
||||||
// clampNumber(1, -1, -5) -> -1
|
// clampNumber(1, -1, -5) -> -1
|
||||||
// clampNumber(3, 2, 4) -> 3
|
// clampNumber(3, 2, 4) -> 3
|
||||||
|
|||||||
Reference in New Issue
Block a user