Ver Mensaje Individual
  #5 (permalink)  
Antiguo 25/08/2010, 18:18
Avatar de zerokilled
zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años, 7 meses
Puntos: 1485
Respuesta: Ejecutar función cuyo nombre se le pasa como parámetro a otra función

@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");
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.