Mi ejemplo tenía errores, vamos de nuevo:
Código:
var MiObjeto = {
objetoPropiedad1: {
handler: function() {
alert(MiObjeto.objetoPropiedad2.nombre);
},
addHandler: function () {
var element = document.getElementById("un-id");
element.addEventListener("click", MiObjeto.objetoPropiedad1.handler, false);
}
},
objetoPropiedad2: {
nombre: "Pedro",
edad: 29
}
}
MiObjeto.objetoPropiedad1.addHandler();
Es un objeto exterior con dos propiedades, dos objetos interiores.
El primer objeto interior toma un elemento del DOM y le añade un handler.
El handler hace referencia a la propiedad nombre del segundo objeto interior.
Mis dudas son:
1 - ¿La cadena de ámbito (Scope chain mejor) del handler contiene al objetoPropiedad2?.
2 - ¿Y contiene a MiObjeto?.
Gracias por leer. Espero haya sido claro.