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.
		
		
		
		
		
			
		
			
				
					17 lines
				
				701 B
			
		
		
			
		
	
	
					17 lines
				
				701 B
			| 
											3 years ago
										 | // fast apply, http://jsperf.lnkit.com/fast-apply/5
 | ||
|  | module.exports = function (fn, args, that) { | ||
|  |   var un = that === undefined; | ||
|  |   switch (args.length) { | ||
|  |     case 0: return un ? fn() | ||
|  |                       : fn.call(that); | ||
|  |     case 1: return un ? fn(args[0]) | ||
|  |                       : fn.call(that, args[0]); | ||
|  |     case 2: return un ? fn(args[0], args[1]) | ||
|  |                       : fn.call(that, args[0], args[1]); | ||
|  |     case 3: return un ? fn(args[0], args[1], args[2]) | ||
|  |                       : fn.call(that, args[0], args[1], args[2]); | ||
|  |     case 4: return un ? fn(args[0], args[1], args[2], args[3]) | ||
|  |                       : fn.call(that, args[0], args[1], args[2], args[3]); | ||
|  |   } return fn.apply(that, args); | ||
|  | }; |