45 lines
		
	
	
		
			1019 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			45 lines
		
	
	
		
			1019 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
|  | var LazyWrapper = require('./_LazyWrapper'), | ||
|  |     LodashWrapper = require('./_LodashWrapper'), | ||
|  |     reverse = require('./reverse'), | ||
|  |     thru = require('./thru'); | ||
|  | 
 | ||
|  | /** | ||
|  |  * This method is the wrapper version of `_.reverse`. | ||
|  |  * | ||
|  |  * **Note:** This method mutates the wrapped array. | ||
|  |  * | ||
|  |  * @name reverse | ||
|  |  * @memberOf _ | ||
|  |  * @since 0.1.0 | ||
|  |  * @category Seq | ||
|  |  * @returns {Object} Returns the new `lodash` wrapper instance. | ||
|  |  * @example | ||
|  |  * | ||
|  |  * var array = [1, 2, 3]; | ||
|  |  * | ||
|  |  * _(array).reverse().value() | ||
|  |  * // => [3, 2, 1]
 | ||
|  |  * | ||
|  |  * console.log(array); | ||
|  |  * // => [3, 2, 1]
 | ||
|  |  */ | ||
|  | function wrapperReverse() { | ||
|  |   var value = this.__wrapped__; | ||
|  |   if (value instanceof LazyWrapper) { | ||
|  |     var wrapped = value; | ||
|  |     if (this.__actions__.length) { | ||
|  |       wrapped = new LazyWrapper(this); | ||
|  |     } | ||
|  |     wrapped = wrapped.reverse(); | ||
|  |     wrapped.__actions__.push({ | ||
|  |       'func': thru, | ||
|  |       'args': [reverse], | ||
|  |       'thisArg': undefined | ||
|  |     }); | ||
|  |     return new LodashWrapper(wrapped, this.__chain__); | ||
|  |   } | ||
|  |   return this.thru(reverse); | ||
|  | } | ||
|  | 
 | ||
|  | module.exports = wrapperReverse; |