boxes/js/utils/range.mjs

28 lines
473 B
JavaScript

export function is_in_range (number, min, max) {
return number >= min && number <= max;
}
export function clamp (number, min, max) {
return number < min
? min
: number > max
? max
: number;
}
export function range (start, end) {
const result = [];
for (let n = start; n <= end; n++) {
result.push(n);
}
return result;
}
export function iter_2d (range_1d, callback) {
for (const y of range_1d) {
for (const x of range_1d) {
callback(x, y);
}
}
}