Compose функция
Создать функцию compose которая выполняет композицию функций справа налево.
Задание в том что может быть неограниченное кол-во. операций. И надо написать функцию для любого кол-ва. Я так понимаю что тут замешаны ...args. Но пока так и не осознал. Для примера есть 2 функции. Надо написать для них compose. А после для неограниченного кол-ва.
function division(x) {
return x/2;
}
function negative(x) {
return -x;
}
var r = compose (division, negative, Math.pow);
r(10, 9)
|
DarkPhoenix,
возможно, я что-то упустил ...
function division(x) {
return x/2;
}
function negative(x) {
return -x;
}
const compose = (...args) => (...ar) => args.reduceRight((res, fn) => [fn(...res)], ar)[0];
const r = compose (negative, division, Math.pow);
console.log(r(10, 9))
|
function division(x) {
return x / 2;
}
function negative(x) {
return -x;
}
function compose(...fs) {
return (...xs) => fs.reduceRight((xs, f) => [f(...xs)], xs)[0];
}
var r = compose(division, negative, Math.pow);
alert(r(10, 9));
|
| Часовой пояс GMT +3, время: 07:49. |