1/** 2 * This method invokes `interceptor` and returns `value`. The interceptor 3 * is invoked with one argument; (value). The purpose of this method is to 4 * "tap into" a method chain sequence in order to modify intermediate results. 5 * 6 * @static 7 * @memberOf _ 8 * @since 0.1.0 9 * @category Seq 10 * @param {*} value The value to provide to `interceptor`. 11 * @param {Function} interceptor The function to invoke. 12 * @returns {*} Returns `value`. 13 * @example 14 * 15 * _([1, 2, 3]) 16 * .tap(function(array) { 17 * // Mutate input array. 18 * array.pop(); 19 * }) 20 * .reverse() 21 * .value(); 22 * // => [2, 1] 23 */ 24function tap(value, interceptor) { 25 interceptor(value); 26 return value; 27} 28 29module.exports = tap; 30