Ver Mensaje Individual
  #2 (permalink)  
Antiguo 17/11/2014, 19:31
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
Puntos: 1485
Respuesta: Mejor metodología para usar this cuando es innaccesible?

buenas...
no estoy del todo seguro qué exactamente quieras hacer, pero se me ocurren dos métodos. el primero creo que sería el más adecuado para tu caso. es similar a lo que estás haciendo: asignar this al argumento de la función. lo único que en este caso sería a una variable local del método que defines para el prototipo (crearTablero).

Código:
function Fn(){}

Fn.prototype.fn = function(){
var that = this;
this.prop = new Class(args, function(){
    // aqui operas con that;
    });
};
el otro método pudiera ser con apply, pero sería más útil si ya tuvieras definida la función.
Código:
function unnamed(){
// hacer algo con this;
}

function Fn(){}
Fn.prototype.fn = function(){
this.prop = new Class(args, function(){
    unnamed.apply(this);
    });
};
@edit: hay un tercer método que se llama bind(), nunca lo he usado pero debe servirte igual. hice un experimento rápido y basicamente es una forma corta de apply. a bind le pasas el objeto (this) y ella te devuelve una función que cuando se invoca, opera con el objeto que le has pasado.

Código:
function unnamed(){
// hacer algo con this;
}

function Fn(){}
Fn.prototype.fn = function(){
this.prop = new Class(args, unnamed.bind(this));
};
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.

Última edición por zerokilled; 17/11/2014 a las 19:46