Propiedades de acceso en POO en JavaScript
Hay dos tipos de propiedades de un objeto.
El primer tipo son las propiedades de datos (data properties). Ya sabemos cómo trabajar con ellas. Todas las propiedades que hemos utilizado hasta el momento actual, eran propiedades de datos.
El segundo tipo de propiedades aún no lo hemos considerado. Estas son las propiedades de acceso (accessor properties). En esencia, son funciones que se utilizan para asignar y obtener un valor, pero en el código externo se ven como propiedades ordinarias del objeto.
Las propiedades de acceso se crean usando
las palabras clave get y set escritas
al declarar los métodos:
class User {
get name() {
}
set name(name) {
}
}
Como resultado de tal declaración
nuestra clase tendrá la propiedad
name. Al mismo tiempo, al intentar leer
esta propiedad, se llamará al método
declarado mediante get:
let name = user.name;
Al intentar escribir, se llamará al método
declarado mediante set:
user.name = 'john';
Se da la siguiente clase:
class Employee {
get name() {
console.log('get');
}
set name(name) {
console.log('set');
}
}
Cree un objeto de esta clase
e intente escribir y leer
datos de la propiedad name.