setter/getter는 클래스의 필드와 같은 방식으로 작동하며, set은 값을 설정하고 get은 값을 가져옵니다.
set 속성명(값) {} // setter 정의
get 속성명 // getter 정의
클래스 내부 customField에 값을 설정하거나 가져오는 것이 가능하다. customField는 MyClass의 필드와 같은 방식으로 작동하지만, 실제로 실행되는 것은 set과 get으로 정의한 메소드입니다.
class MyClass {
set customField(value) {
this._customField = value;
}
get customField() {
return this._customField;
}
constructor(value) {
this._customField = value;
}
}
const myInstance = new MyClass();
myInstance.customField = 20;
console.log(myInstance.customField);
set을 메소드처럼 정의하고 있지만 myInstance.customField(20)과 같은 방식으로는 사용이 불가능하며, 속성의 방식과 같이 myInstance.customField = 20 의 대입 방식을 사용합니다.