Files
30-seconds-of-code/snippets/clampNumber.md
Angelos Chalaris 3d79413392 Linting
2017-12-27 11:02:46 +02:00

513 B

clampNumber

Clamps num within the inclusive lower and upper bounds.

If lower is greater than upper, swap them. If num falls within the range, return num. Otherwise, return the nearest number in the range.

const clampNumber = (num, lower, upper) => {
  if (lower > upper) upper = [lower, lower = upper][0];
  return (num >= lower && num <= upper) ? num : ((num < lower) ? lower : upper);
};
// clampNumber(2, 3, 5) -> 3
// clampNumber(1, -1, -5) -> -1
// clampNumber(3, 2, 4) -> 3