UNPKG

ut2

Version:

一个现代 JavaScript 实用工具库。[点击查看在线文档]。

31 lines (27 loc) 839 B
'use strict'; var defaultTo = require('./defaultTo.js'); var native = require('./internals/native.js'); var toNumber = require('./toNumber.js'); var clamp = function (number, lower, upper) { if (upper === native.nativeUndefined) { upper = lower; lower = native.nativeUndefined; } if (upper !== native.nativeUndefined) { upper = defaultTo(toNumber(upper), 0); } if (lower !== native.nativeUndefined) { lower = defaultTo(toNumber(lower), 0); } number = toNumber(number); if (number === number) { if (upper !== native.nativeUndefined) { number = number <= upper ? number : upper; } if (lower !== native.nativeUndefined) { number = number >= lower ? number : lower; } } return number; }; module.exports = clamp;