Ver Mensaje Individual
  #3 (permalink)  
Antiguo 27/03/2011, 21: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
Puntos: 1485
Respuesta: Transición que no funciona

otros apuntes...

el metodo calcar no me hace sentido, especialmente cuando se le pasa como parametro las opciones a FX. ¿calcar no deberia solamente asignar las propiedades faltante? en la linea #13 y #16, fijate que el orden es incorrecto. es decir, primero estas copiando las propiedades del objeto original y luego copias las propiedades del objeto por defecto. en este segundo bucle, las propiedades por defecto sobreescriben al original. deberia ser al reves. el codigo tambien se puede mejorar de otra forma. en lugar de crear un objeto desde cero e ir copiando las propiedades, puedes revisar si algunas de las propiedades esta definida. en caso de no estar definida, la creas.
Código:
Object.prototype.trace = function(_default){
for(var prop in _default) if(!(prop in this)) this[prop] = _default[prop];
}
adicionalmente, los objetos no tiene la propiedad prototype, este le pertenece a las funciones. por lo que al calcar el objeto estas asignando una propiedad indefinida al objeto original.

por otro lado, en la linea #70 tienes un error de comparacion. los arrays devuelven el string 'object' cuando se utiliza el operador typeof. para determinar si una propiedad es un array debes comparar los constructores.
Código:
var array = [];
console.log(array.constructor === Array);
sin embargo, no comprendo el proposito de esa linea puesto que al evaluarse, se invoca una funcion que no existe en el objeto Efectos. de igual forma, el else de la condicion sobre escribe la propiedad curva del objeto opc con valor undefined. como resultado, en la linea #57 se intenta invocar curva como funcion cuando en realidad el valor es undefined. en fin, probablemente sea porque no has puesto las funciones que has omitido.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.

Última edición por zerokilled; 27/03/2011 a las 22:31