add hw2
This commit is contained in:
		
							
								
								
									
										54
									
								
								node_modules/ramda/es/mapAccum.js
									
									
									
										generated
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										54
									
								
								node_modules/ramda/es/mapAccum.js
									
									
									
										generated
									
									
										vendored
									
									
										Executable file
									
								
							| @@ -0,0 +1,54 @@ | ||||
| import _curry3 from "./internal/_curry3.js"; | ||||
| /** | ||||
|  * The `mapAccum` function behaves like a combination of map and reduce; it | ||||
|  * applies a function to each element of a list, passing an accumulating | ||||
|  * parameter from left to right, and returning a final value of this | ||||
|  * accumulator together with the new list. | ||||
|  * | ||||
|  * The iterator function receives two arguments, *acc* and *value*, and should | ||||
|  * return a tuple *[acc, value]*. | ||||
|  * | ||||
|  * @func | ||||
|  * @memberOf R | ||||
|  * @since v0.10.0 | ||||
|  * @category List | ||||
|  * @sig ((acc, x) -> (acc, y)) -> acc -> [x] -> (acc, [y]) | ||||
|  * @param {Function} fn The function to be called on every element of the input `list`. | ||||
|  * @param {*} acc The accumulator value. | ||||
|  * @param {Array} list The list to iterate over. | ||||
|  * @return {*} The final, accumulated value. | ||||
|  * @see R.scan, R.addIndex, R.mapAccumRight | ||||
|  * @example | ||||
|  * | ||||
|  *      const digits = ['1', '2', '3', '4']; | ||||
|  *      const appender = (a, b) => [a + b, a + b]; | ||||
|  * | ||||
|  *      R.mapAccum(appender, 0, digits); //=> ['01234', ['01', '012', '0123', '01234']] | ||||
|  * @symb R.mapAccum(f, a, [b, c, d]) = [ | ||||
|  *   f(f(f(a, b)[0], c)[0], d)[0], | ||||
|  *   [ | ||||
|  *     f(a, b)[1], | ||||
|  *     f(f(a, b)[0], c)[1], | ||||
|  *     f(f(f(a, b)[0], c)[0], d)[1] | ||||
|  *   ] | ||||
|  * ] | ||||
|  */ | ||||
|  | ||||
| var mapAccum = | ||||
| /*#__PURE__*/ | ||||
| _curry3(function mapAccum(fn, acc, list) { | ||||
|   var idx = 0; | ||||
|   var len = list.length; | ||||
|   var result = []; | ||||
|   var tuple = [acc]; | ||||
|  | ||||
|   while (idx < len) { | ||||
|     tuple = fn(tuple[0], list[idx]); | ||||
|     result[idx] = tuple[1]; | ||||
|     idx += 1; | ||||
|   } | ||||
|  | ||||
|   return [tuple[0], result]; | ||||
| }); | ||||
|  | ||||
| export default mapAccum; | ||||
		Reference in New Issue
	
	Block a user
	 nik
					nik