currying
by Artem
JavaScript
'use strict';
function greet(greeting, name, divider) {
console.log(greeting + ', ' + name + divider);
}
function curry(fn) {
const params = Array.from(arguments).slice(1);
return function() {
fn.call(this, ...params.concat(Array.from(arguments)));
}
}
const foo = curry(greet, 'Hello');
foo('Artem', '#');