Доброго времени суток , прохожу задание на каррирование функции -
https://www.codewars.com/kata/55ba24f1cb367c48ac00...
Не могу пройти тест с eval :
var curryEval = CurryIt(eval);
curryEval("var y = function(){return true}");
curryEval();
Test.expect(y(), 'accepting a native global function is not working')
но у меня в песочнице всьо работает -
https://codesandbox.io/s/angry-nobel-qpf9q?file=/s...
Сам код :
let memo = {};
function CurryIt(args, ...rest) {
function cur() {
const arg = [...arguments];
return CurryIt(...arg, args);
}
if (typeof args === "function") {
if (!memo["fn"]) {
memo["fn"] = args;
} else {
const res = memo["memoized"];
memo["memoized"] = 0;
return res;
}
} else {
memo["memoized"] =
(memo["memoized"] || 0) +
memo.fn(args, ...rest.filter(el => typeof el === "number"));
}
return cur;
}
var curryEval = CurryIt(eval);
curryEval("var y = function(){return true}");
curryEval();
console.log(y());
Кто может обьяснить что не так ?