Código PHP:
var a= function()
{
this.algo=function(){
};
}
connection closed.
| ||||
Como sabes la existencia de un método en una Clase? loading.......... Código PHP: connection closed.
__________________ Maborak Technologies |
| ||||
Re: Como sabes la existencia de un método en una Clase? Hola: Haciendo un bucle asociativo puedes obtener todos los items de cualquier objeto, por ejemplo para window: var ventanitas = new Array(); for (i in window) ventanitas[ventanitas.length] = i; alert(ventanitas); Luego, si hay alguna variable, basta con ver si la instancia está "undefined" if (a["algo"] == undefined)... Información adicional: Nuevo destripador Saludos
__________________ Por favor: No hagan preguntas de temas de foros en mensajes privados... no las respondo |
| ||||
Re: Como sabes la existencia de un método en una Clase? loading........... Gracias, el problema es que mi CLase no está instanciada Código PHP: Código PHP: connection closed.
__________________ Maborak Technologies |
| ||||
Re: Como sabes la existencia de un método en una Clase? Supongo que sin instanciar un objeto de esa clase es un poco complicado... Puedes intentar hacer: Código PHP: Código PHP: La verdad es que pienso que sin hacer una instancia de la clase es imposible, no leo veo sentido a no poder instanciarla. Un saludo.
__________________ - Haz preguntas inteligentes, y obtendrás más y mejores respuestas. - Antes de postearlo Inténtalo y Búscalo. - Escribe correctamente tus mensajes. |
| ||||
Re: Como sabes la existencia de un método en una Clase? loading........... Bueno, curioso pero... Si haces. 1) Código PHP: 2) Código PHP: Código PHP: Código PHP: Aunque tambien podria hacer. Código PHP: connection closed.
__________________ Maborak Technologies |
| ||||
Re: Como sabes la existencia de un método en una Clase? La verdad, me he perdido :( Al hacer a.prototype.b=Function("return 'hola'"); Lo que haces es asignarle una propiedad a a.prototype, o a una instancia de a (new a()) no a a, por eso a.b no funciona. Cuando lo instancias (new a()) entonces sí que los métodos (funciones de a) funcionan, al instanciarlo podemos utilizar el prototype directamente. PERO SÓLO DIRECTAMENTE: Es decir, no podemos poner new a().prototype.b, pero sí a.prototype.b; sin embargo a.b NO funciona (porque no es instancia) mientras que new a().b sí (al instanciarlo, sí). No sé si he llegado a algo en claro, o me he liado más: Código PHP: Al declararlo sin prototype (c), queda declarado como "propiedad directa" de a, y nada más: Accederemos a ella directamente. Instanciado no habrá manera de llegar hasta c. Creo que estoy liando la marrana más... Un saludo MaBoRaK, y explicame mejor ese Cita:
Iniciado por MaBoRaK Pero quiero evitar tener que crear la variable ALGO en memoria....hago una aplicación "muy pesada".
__________________ - Haz preguntas inteligentes, y obtendrás más y mejores respuestas. - Antes de postearlo Inténtalo y Búscalo. - Escribe correctamente tus mensajes. |