You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							39 lines
						
					
					
						
							890 B
						
					
					
				
			
		
		
	
	
							39 lines
						
					
					
						
							890 B
						
					
					
				var baseClamp = require('./_baseClamp'), | 
						|
    toNumber = require('./toNumber'); | 
						|
 | 
						|
/** | 
						|
 * Clamps `number` within the inclusive `lower` and `upper` bounds. | 
						|
 * | 
						|
 * @static | 
						|
 * @memberOf _ | 
						|
 * @since 4.0.0 | 
						|
 * @category Number | 
						|
 * @param {number} number The number to clamp. | 
						|
 * @param {number} [lower] The lower bound. | 
						|
 * @param {number} upper The upper bound. | 
						|
 * @returns {number} Returns the clamped number. | 
						|
 * @example | 
						|
 * | 
						|
 * _.clamp(-10, -5, 5); | 
						|
 * // => -5 | 
						|
 * | 
						|
 * _.clamp(10, -5, 5); | 
						|
 * // => 5 | 
						|
 */ | 
						|
function clamp(number, lower, upper) { | 
						|
  if (upper === undefined) { | 
						|
    upper = lower; | 
						|
    lower = undefined; | 
						|
  } | 
						|
  if (upper !== undefined) { | 
						|
    upper = toNumber(upper); | 
						|
    upper = upper === upper ? upper : 0; | 
						|
  } | 
						|
  if (lower !== undefined) { | 
						|
    lower = toNumber(lower); | 
						|
    lower = lower === lower ? lower : 0; | 
						|
  } | 
						|
  return baseClamp(toNumber(number), lower, upper); | 
						|
} | 
						|
 | 
						|
module.exports = clamp;
 | 
						|
 |