Привет.
Пытаюсь решить задачку -
https://jsfiddle.net/591oL2wt/
"Написать функцию высшего порядка, которая принимает на вход функцию и возвращает функцию, которая ведет себя точно так же, как исходная, но имеет метод, который позволяет определить, какое количество раз данная функция вызывалась с данным аргументом calc.totalRun(argument) => number"
Пример вызова calc:
calc(1, 2, 3);
calc(1, 3, 9);
calc(1, 1, 5);
Пример того, что должно быть при вызове метода
console.log(calc.totalRun(1)); // -> запускалась 3 раза
console.log(calc.totalRun(3)); // -> запускалась 2 раза
console.log(calc.totalRun(5)); // -> запускалась 1 раз
Функции и метод написал, но загвоздка в массиве
args. Если конструкцию (
args.includes(number)) поиска в нем аргумента писать внутри метода
totalRun, то элементы в args всегда приходят равными аргументам в последнем вызове функции
calc.
Если вынести поиск за пределы метода, то считает правильно, но из-за области видимости нельзя передать аргумент который принимает метод.
Помогите понять где ошибка и почему?