Я пытаюсь оценить функцию в новом контексте, то есть в том, который содержит определенное определенное слово, которого нет в области видимости. Это достаточно просто, если у меня есть определение функции как строки, но я хотел бы предоставить возможность сделать это с помощью обычного списка функций, например:
var funcs = {
first: function() { return 'yayaya'; },
second: function() { return 'okokok' + keyword; },
...
};
затем позже:
function Thing () {};
for (func in funcs) {
var definition = funcs[func].definition();
var keyword = "NOW I AM THE KEYWORD";
var actual_func_with_keyword_defined = eval(definition);
Thing.prototype[func] = actual_func_with_keyword_defined;
}
Чего мне не хватает, так это функции Definition () или ее эквивалента, которая возвращает источник функции. Возможно ли это в javascript?