/*
Описание:
Напишите функцию memoize, которая принимает функцию и
возвращает новую функцию, которая запоминает результаты
выполнения исходной функции для заданных аргументов и
возвращает сохраненный результат при повторном вызове
с теми же аргументами.
*/
function fibonacci(n) {
if (n <= 1) {
return n;
}
return fibonacci(n - 1) + fibonacci(n - 2);
}
const memoizedFibonacci = memoize(fibonacci);
console.log(memoizedFibonacci(10)); // 55 (вычислено)
console.log(memoizedFibonacci(10)); // 55 (взято из кэша)**Ответ
function memoize(operation) {
return function (...args) {
return operation(...args);
};
}