Ver Mensaje Individual
  #9 (permalink)  
Antiguo 29/01/2010, 20:29
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: Pausar Ejecucion de JS

el problema esta en la funcion Animation. hay varias razones para que suceda dicho error pero en este caso es porque estas intentando asignar un valor directamente al objeto this. a mi entender, tu quieres inicializar this con un objeto que ya tiene las propiedades declaradas. no estoy muy claro porque nunca lo he realizado de esa manera, pero creo que no puedes hacerlo asi porque this es un objeto reservado para ese constructor.

tienes dos opciones: al estilo vieja escuela, o creas una funcion que inicialice this pasandole un objeto. quizas la segunda opcion parece estupida, pero veremos. la vieja escuela es la forma comun y corriente.
Código:
function(){
this.nombre = valor;
// se repite tantas veces sea necesario inicializar el objeto;
...
}
la otra opcion, es una funcion que itera por las propiedades de un objeto y se van asignando al objeto this. quizas algo como sigue:
Código:
Object.prototype.initialize = function(init){
for(var prop in init)if(init.hasOwnProperty(prop)) this[prop] = init[prop];
}

// se usa de la siguiente manera;
Animation = function(sprite, speed){
this.initialize({spr: sprite, spd: speed, frame:[]});
}
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.