getter, setter ?
멤버변수는
private
으로 두어서 외부에서 직접 값을 마음대로 바꿀 수 없도록 하고getter, setter 함수를
public
으로 만들어 함수를 통해서만 값을 참조하고 바꿀 수 있도록 제한한다.get, set 키워드?
ES5
부터 getter, setter 함수를 지정할 때 앞에get
,set
키워드만 붙여서 선언하면 된다.객체.멤버변수
를 실행하면 get 함수가 호출되고객체.멤버변수 =값
을 실행하면 set 함수가 호출된다.
get
,set
이 없는 프로퍼티는 자동으로read-only
로 간주된다.
코드 예시
class Test { constructor(private _num: number) {} // getter 함수 get num(): number { return this._num; } // setter 함수 set num(num: number) { this._num = num; } } const t1 = new Test(5); console.log(t1.num); // getter 예시 t1.num = 2; // setter 예시 console.log(t1.num); // getter 예시
