Ver Mensaje Individual
  #13 (permalink)  
Antiguo 08/08/2011, 11:15
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: duda al ordenar código javascript

buenas @refreegrata,
lo que sucede en metodo_2 dentro de espacio es que se crea un closure. esto sucede por tres razones principales: porque hay una referencia a un objeto, dicha referencia ocurre dentro de un scope, y el elemento que hace referencia al objeto es devuelto o asignado a un contexto externo. javascript tiene un mecanismo de resolución de conflicto donde va buscando los identificadores (tokens) por un orden en el scope. en tu caso particular, javascript primero busca si metodo_1 esta definido en el mismo scope (dentro de la función metodo_2) y luego continua ascendiendo (dentro de la función espacio). como esta definido en espacio, entonces hace referencia a este. notese que las referencias se basan de acuerdo al contexto en que se definen y no en el contexto en que se invoca.

algunos artículos que te pueden ayudar, http://robertnyman.com/2008/10/09/ex...-and-closures/, http://jibbering.com/faq/notes/closures/.

nota: no he leido todos los mensajes por lo que no se muy bien que se ha discutido.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.