<script type="text/javascript">
// первый подопытный
function myFunc(a){
alert('This is myFunc. ' + a);
}
// второй подопытный
obj = {
myFunc: function(a){
alert('This is obj.myFunc. ' + a);
}
}
// объект, производящий callback вызов
starter = {
callback: null,
call: function(){
window[this.callback](this.callback);
}
}
starter.callback = 'myFunc'; // назначаем обработчиком функцию
starter.call(); // работает
starter.callback = 'obj.myFunc'; // назначаем обработчиком метод объекта
starter.call(); // Ошибка: window[this.callback] is not a function
</script>
Как сотворить рабочий вариант для обоих подопытных?
Eval не предлагать :)