JavaScript clases y ES6

JavaScript es un lenguaje que soporta tanto programación orientada a objeto como programación funcional. Sin embargo la sintaxis soportada para crear clases y objetos es cuanto menos "pobre", por no decir otra cosa. La versión 6 de ECMAScript mejora estos aspectos de forma significativa.

Declarando clases

A partir de ahora disponemos de la palabra reservada "class" que convertirá en algo mucho más natural la declaración de una clase.
 "use strict"; class Persona { constructor(nombre) { this.nombre = nombre; } } var p1 = new Persona("Pedro"); console.log(p1.nombre); 
Como se puede observar la sintaxis es mucho más amigable y similar a Java o C# . Se ha añadido también el soporte para constructores a través de la palabra reservada "constructor".

Añadiendo Setters y Getters

Facilita la definición de los métodos set/get es algo que también se echaba en falta.
 "use strict"; class Persona { constructor(nombre,apellidos) { this._nombre = nombre; this._apellidos = apellidos; } get nombre(){ return this._nombre; } set nombre(nombre){ this._nombre = nombre; } get apellidos(){ return this._apellidos; } set apellidos(apellidos){ this._apellidos = apellidos; } } var p1 = new Persona("Pedro","Perez"); console.log(p1.nombre); console.log(p1.apellidos); 

Creando métodos estáticos

A partir de ahora la creación de métodos estáticos se podrá realizar apoyándonos en "static".
 class Persona { ............... static printHtml (objetoPersona){ return ""+ objetoPersona.nombre+","+ objetoPersona.apellidos+"
"; } } var p1 = new Persona("Pedro","Perez"); console.log(p1.nombre); console.log(p1.apellidos); console.log(Persona.printHtml(p1));
El resultado de todas estas operaciones lo podremos ver impreso en la consola:
La noticia JavaScript clases y ES6 fue publicada originalmente en Genbeta Dev por Cecilio Álvarez .

0 comentarios:

Publicar un comentario