En ES2020 se introdujo la sintaxis campos privados en las clases. Se hace uso de un numeral como prefijo del nombre de la variable.
¿Cúal sería la ventaja de usar esto? Que no existe la posibilidad de que alguien modifique la variable privada desde la instancia a menos de que use el setter que le dimos.
Con el ejemplo en esta clase, quedaría así:
class Course {
#name;
constructor({
name,
classes = []
}) {
this.#name = name;
this.classes = classes;
}
get name() {
return this.#name;
}
set name(nuevoNombrecito) {
if (nuevoNombrecito === 'Curso Malito de Programación Básica') {
console.error('Web... no');
} else {
this.#name = nuevoNombrecito;
}
}
}
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?
o inicia sesión.