class Employee {
constructor(name, age) {
this._name = name;
this.age = age;
}
doWork() {
return `${this._name} is working`;
}
get name() {
return this._name.toUpperCase();
}
set name(newName){
if(newName){
this._name = newName;
}
}
}
let man = new Employee('A', 10);
console.log(man.name, man.age);
man.name = 'B';
man.age = 20;
console.log(man.name, man.age);
这是我的代码。我为_name成员创建了一个getter和setter。我没有为age创建getter和setter。但是两者都可以像这样更新这两个字段:
man.name = 'B';man.age = 20;
因此,我很困惑,在JavaScript中是否需要getter和setter?