RosettaCodeData/Task/Partial-function-application/JavaScript/partial-function-applicatio...

22 lines
477 B
JavaScript

var f1 = function (x) { return x * 2; },
f2 = function (x) { return x * x; },
fs = function (f) {
return function () {
return Array.prototype.slice.call(
arguments
).map(f);
}
},
fsf1 = fs(f1),
fsf2 = fs(f2);
// Test alternative approach, with arbitrary numbers of arguments
[
fsf1(0, 1, 2, 3, 4),
fsf2(0, 1, 2),
fsf1(2, 4, 6, 8, 10, 12),
fsf2(2, 4, 6, 8)
]