EN
JavaScript - keeping number value in range
18
points
In this short article we would like to show how to keep number value in the range using JavaScript.
Quick solution:
var value = 20;
var min = 0;
var max = 10;
var result = Math.max(min, Math.min(max, value));
Reusable example
// ONLINE-RUNNER:browser;
function keepRange(value, min, max) {
return Math.max(min, Math.min(max, value));
}
// Usage example:
// value min max
console.log(keepRange( 2, 1, 5 )); // 2
console.log(keepRange( 0, 1, 5 )); // 1
console.log(keepRange( 6, 1, 5 )); // 5
console.log(keepRange( 1, 1, 5 )); // 1
console.log(keepRange( 5, 1, 5 )); // 5
console.log(keepRange( -2, 1, 5 )); // 1
Custom solution
// ONLINE-RUNNER:browser;
function keepRange(value, min, max) {
if (value < min) {
return min;
}
if (value > max) {
return max;
}
return value;
}
// Usage example:
// value min max
console.log(keepRange( 2, 1, 5 )); // 2
console.log(keepRange( 0, 1, 5 )); // 1
console.log(keepRange( 6, 1, 5 )); // 5
console.log(keepRange( 1, 1, 5 )); // 1
console.log(keepRange( 5, 1, 5 )); // 5
console.log(keepRange( -2, 1, 5 )); // 1