19 lines
		
	
	
		
			548 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			19 lines
		
	
	
		
			548 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
|  | var baseClamp = require('./_baseClamp'), | ||
|  |     shuffleSelf = require('./_shuffleSelf'), | ||
|  |     values = require('./values'); | ||
|  | 
 | ||
|  | /** | ||
|  |  * The base implementation of `_.sampleSize` without param guards. | ||
|  |  * | ||
|  |  * @private | ||
|  |  * @param {Array|Object} collection The collection to sample. | ||
|  |  * @param {number} n The number of elements to sample. | ||
|  |  * @returns {Array} Returns the random elements. | ||
|  |  */ | ||
|  | function baseSampleSize(collection, n) { | ||
|  |   var array = values(collection); | ||
|  |   return shuffleSelf(array, baseClamp(n, 0, array.length)); | ||
|  | } | ||
|  | 
 | ||
|  | module.exports = baseSampleSize; |