@adler,
el ejemplo que expones vendria siendo el equivalente de la sintaxis asociativa, en particular el primer ejemplo que mostre. ahora bien, no tengo claro si a lo que te refieres es a lo que viene a continuacion. algo que recuerdo es que por alguna razon
eval tiene acceso al scope de una funcion, de modo que el siguiente ejemplo funciona. siempre habia entendido que
eval se ejecuta en el contexto global. en lo personal, no me gusta usar la alternativa de
eval y sus pares (setTimeout, setInterval, Function), pero tampoco significa que esta mal. es practicamente el mismo ejemplo tuyo, solo que la funcion esta anidada.
Código:
function fn(name){
function _fn(){
// ...;
}
return eval(name)();
}
fn("_fn");