diff --git a/snippets/spreadOver.md b/snippets/spreadOver.md new file mode 100644 index 000000000..39ea7362e --- /dev/null +++ b/snippets/spreadOver.md @@ -0,0 +1,14 @@ +### spreadOver + +Takes a veriadic function and returns a closure that accepts an array of arguments to map to the inputs of the function. + +Use closures and the spread operator (`...`) to map the array of arguments to the inputs of the function. + +```js +const spreadOver = fn => argsArr => fn(...argsArr); +/* +const arrayMax = spreadOver(Math.max) +arrayMax([1,2,3]) // -> 3 +arrayMax([1,2,4]) // -> 4 +*/ +``` diff --git a/tag_database b/tag_database index 78da7daaf..c2c5be33f 100644 --- a/tag_database +++ b/tag_database @@ -105,6 +105,7 @@ similarity:array sleep:function sortCharactersInString:string speechSynthesis:media +spreadOver:adapter standardDeviation:math symmetricDifference:array tail:array