Laburo España: 250.000 ofertas de empleo

rubensa, algo en qué pensar

Viernes, 13 de enero de 2006

Programación Orientada a Objetos con JavaScript

Auque el JavaScript no es un lenguaje orientado a objetos puramente dicho, si que está "basado en objetos".
En esta receta presento un esqueleto básico para la creación de una clase en JavaScript, que permite herencia.

Definición de una clase:

// Constructor
function MiClase() {
// Propiedades de instancia
this.propiedad1 = false;
this.propiedad2 = new Array();
}

// Propiedades estáticas
MiClase.log = log4js.Logger.getLogger("miclase");

// Métodos estáticos
MiClase.inicializar = function (parametros) {
}

// Métodos de instancia
MiClase.prototype.inicializar = function (parametros) {
// Ejecutar acciones que no dependen de las propiedades de la instancia
MiClase.inicializar(parametros);
// El resto de acciones
}


Definición de una clase hija:

MiClaseHija.prototype = new MiClase();
MiClaseHija.prototype.constructor = MiClaseHija;
MiClaseHija.parent = MiClase.prototype;

// Constructor
function MiClaseHija() {
// Propiedades de instancia nuevas o redefinidas
}

// Propiedades estáticas nuevas o redefinidas
MiClaseHija.log = log4js.Logger.getLogger("miclasehija");

// Metodos de instancia nuevos o sobreescritos
MiClaseHija.prototype.inicializar = function (parametros) {
// Llamamos la implementación de la clase padre
MiClaseHija.parent.inicializar.call(this, parametros);

// Hacemos el resto de tratamientos particulares
}


Creación de instancias de las clases:

var instancia = new MiClaseHija();

Llamada a métodos:

instancia.inicializar();


Por: Rubén Suárez Alvarez | Recetas | Comentarios (0) | Referencias (0)

Comentarios

Comentar


Recordar datos

Acerca de

"El trabajo tiene un peso específico dentro de la empresa. A más trabajo, más peso y por tanto más abajo estás. A menor trabajo más ligero te vuelves y más asciendes. ¿Y tú, trabajas o asciendes en tu empresa?"

rubensa

Bilo y Nano


(pulsa sobre la imagen para ver la tira completa)

Raulito el Friki


(pulsa sobre la imagen para ver la tira completa)

Linux Hispano


(pulsa sobre la imagen para ver la tira completa)

Calendario

Enero de 2006
>>
Lu Ma Mi Ju Vi Do
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31

Sindicación

RDF XML ATOM

Créditos

Bitácora de Rubén Suárez Alvarez
Online gracias a Bitácoras, weblogs en español

LaInformacion.com lainformacion.com - Medio Oficial de los Premios Bitacoras 2009