RosettaCodeData/Task/First-class-functions/JavaScript/first-class-functions.js
Ingy döt Net db842d013d A-M baby
2013-04-10 21:29:02 -07:00

23 lines
489 B
JavaScript

// Functions as values of a variable
var cube = function(x) {
return Math.pow(x, 3);
};
var cuberoot = function(x) {
return Math.pow(x, 1/3);
};
// Higher order function
var compose = function (f, g) {
return function (x) {
return f(g(x));
};
};
// Storing functions in a array
var fun = [Math.sin, Math.cos, cube];
var inv = [Math.asin, Math.acos, cuberoot];
for (var i = 0; i < 3; i++) {
// Applying the composition to 0.5
console.log(compose(inv[i], fun[i])(0.5));
}