Conflictos de nombres de métodos y propiedades en POO en JavaScript
Los nombres de propiedades y métodos no deben coincidir, esto causará un conflicto. Veamos un ejemplo. Supongamos que tenemos la siguiente clase:
javascriptclass User {
name() {
console.log('method');
}
}
Creemos un objeto de esta clase:
javascriptlet user = new User;
Llamemos a su método, por ahora todo funcionará:
javascriptuser.name(); // funciona
Y ahora escribamos datos en la propiedad del mismo nombre, sobrescribiendo así el código del método:
javascriptuser.name = 'str';
user.name(); // error
Para evitar tales conflictos, siempre dé a los métodos nombres-verbos, y a las propiedades - nombres-sustantivos.
Задание 1
Corrija el error cometido en el siguiente código:
javascriptclass Employee {
constructor(salary) {
this.salary = salary;
}
salary() {
return this.salary + '
;
}
}