Artículos
Javascript

Clase Javascript con métodos privados

19/Sep/2010

Hemos visto como crear atributos privados definidos dentro de una clase en Javascript. Ahora crearemos métodos privados que nos permitan acceder a esa información.

En la siguiente definición vemos como podemos crear métodos públicos. Los cuales se pueden invocar desde cualquier parte del código JavaScript.

function rectangulo(base,altura){
  this.base = base;
  this.altura = altura;
  this.calcularArea = function () { return this.base*this.altura; };
}

Pero, si nos queremos volver orientados a objetos en el más puro de los sentidos, una de las preguntas sería ¿Cómo puedo crear métodos privados?

Recordamos que los métodos privados son aquellos métodos que se pueden llamar desde métodos de la clase, pero nunca de forma externa a la clase.

En este caso vamos a añadir un método que incremente en uno la altura. Pero haremos que el método sea privado. Para que el método solo sea privado dejamos de utilizar el elemento this.

Así, los métodos privados nos quedarían de la siguiente forma:

function rectangulo(base,altura){
	var base = base;
	var altura = altura;	
	this.inc = function() { incBase(); incAltura(); };

	function incBase() { base++; }
	function incAltura() { altura++; }
}

Vemos que los métodos incBase() e incAltura() son métodos privados, definidos como simples funciones y que acceden a propiedades privadas (base y altura).

De igual manera, hemos creado un método público, llamado inc(), que invoca a estos métodos privados. Y que será el que podamos llamar desde código JavaScript externo.

var r1 = new rectangulo(2,6);
r1.inc();

Vídeos sobre Javascript

Disfruta también de nuestros artículos sobre Javascript en formato vídeo. Aprovecha y suscribete a nuestro canal.

Test Javascript

¿Te atreves a probar tus habilidades y conocimiento en Javascript con nuestro test?

Test Javascript
Suscribir
Notificar de
guest
2 Comentarios
Recientes
Anteriores Más votados
Opiniones integradas
Ver todos los comentarios