You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
30 lines
703 B
JavaScript
30 lines
703 B
JavaScript
6 years ago
|
/**
|
||
|
* This method invokes `interceptor` and returns `value`. The interceptor
|
||
|
* is invoked with one argument; (value). The purpose of this method is to
|
||
|
* "tap into" a method chain sequence in order to modify intermediate results.
|
||
|
*
|
||
|
* @static
|
||
|
* @memberOf _
|
||
|
* @since 0.1.0
|
||
|
* @category Seq
|
||
|
* @param {*} value The value to provide to `interceptor`.
|
||
|
* @param {Function} interceptor The function to invoke.
|
||
|
* @returns {*} Returns `value`.
|
||
|
* @example
|
||
|
*
|
||
|
* _([1, 2, 3])
|
||
|
* .tap(function(array) {
|
||
|
* // Mutate input array.
|
||
|
* array.pop();
|
||
|
* })
|
||
|
* .reverse()
|
||
|
* .value();
|
||
|
* // => [2, 1]
|
||
|
*/
|
||
|
function tap(value, interceptor) {
|
||
|
interceptor(value);
|
||
|
return value;
|
||
|
}
|
||
|
|
||
|
module.exports = tap;
|