JSFiddle - React, Tailwind, and code Playground
JavaScript
function partial() {
var func = arguments[0];
argsDefined = [].slice.call(arguments, 1);
return function() {
for (var i = argsDefined.length - 1; i >= 0; i--) {
[].unshift.call(arguments, argsDefined[i]);
}
return func.apply(null, arguments);
}
}
function add(a, b) { return a + b; }
function mult(a, b, c, d) { return a * b * c * d; }
var add5 = partial(add, 5);
console.log(add5(2));
console.log(add5(5));
var mult25 = partial(mult, 2, 5);
console.log(mult25(3, 2));
var mult2 = partial(mult, 2);
console.log(mult2(1, 2, 5));