18 lines
411 B
JavaScript
18 lines
411 B
JavaScript
// Functions as values of a variable
|
|
var cube = x => Math.pow(x, 3);
|
|
|
|
var cuberoot = x => Math.pow(x, 1 / 3);
|
|
|
|
|
|
// Higher order function
|
|
var compose = (f, g) => (x => 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));
|
|
}
|