Manual de JavaScript: Objetos

Objetos

JavaScript incorpora programación orientada a objetos. A cada tipo de objeto lo denominaremos clase, aunque para ser estrictos, en JavaScript deberíamos hablar de prototipos en vez de clases.

Una clase se puede considerar como una colección de propiedades y de métodos que acceden a esas propiedades .

  • clases: para declarar una clase en JavaScript se usa function, que es el constructor para la clase.
  • propiedades: las propiedades de la clase se definen anteponiendo this al nombre de la propiedad (this se refiere al propio objeto).
  • métodos: los métodos se definen como funciones normales. Acceden a las propiedades de la clase anteponiendo this al nombre de la propiedad.

La sintaxis básica para definir una clase es:

function mostrarPerfil() {
  document.write("Nombre: " + this.nombre + "<br />")
  document.write("Edad: " + this.edad + "<br />")
  document.write("Puesto: " + this.puesto + "<br />")
}
 
function empleado(nombre, edad, puesto) {
  this.nombre = nombre
  this.edad = edad
  this.puesto = puesto
  this.mostrarPerfil = mostrarPerfil
}

Una vez definida la clase podemos crear objetos de esa clase con la sentencia new y acceder a sus propiedades y métodos con la sintaxis objeto.propiedad y objeto.metodo:

empleado_1 = new empleado("Pedro", 26, "Programador")
empleado_1.mostrarPerfil()
 
empleado_1.edad = 30
empleado_1.mostrarPerfil()

Con el código anterior obtenemos:

Nombre: Pedro
Edad: 26
Puesto: Programador
 
Nombre: Pedro
Edad: 30
Puesto: Programador

JavaScript soporta herencia y los objetos pueden anidarse de forma que un objeto sea una propiedad de otro objeto. Por ejemplo:

function oficina(ciudad, pais) {
  this.ciudad = ciudad
  this.pais = pais
}
 
function empleado(nombre, edad, puesto, oficina)
  this.nombre = nombre
  this.edad = edad
  this.puesto = puesto
  this.oficina = oficina
}
 
oficina_1 = new oficina("Madrid","Spain")
empleado_1 = new empleado("Pedro", 26, "Programador", oficina_1)

Recursos

Artículos en la categoría "Manual de JavaScript"

  1. Manual de JavaScript: Funciones
  2. Manual de JavaScript: Estructuras de control
  3. Manual de JavaScript: Objetos del navegador
  4. Manual de JavaScript: Objetos intrínsecos
  5. Manual de JavaScript: Objetos
  6. Manual de JavaScript: Pasar variables desde JavaScript a PHP y viceversa