[TypeScript] 메서드와 getter & setter

hello__0·2022년 8월 5일
0

메서드

객체(클래스)에서는 행동을 뜻한다.

introduce(): string {
    return `${this.name}의 나이는 ${this.age} 입니다.`
  };

getter & setter

비공개로 설정할 필요가 있는 속성을 private로 설정한 후, 이 속성에 접근하여 값을 읽거나, 쓰기 위한 Getter, Setter 함수를 사용하여 속성을 정의할 수 있습니다.

  • getter O / setter X 일 때, 속성은 자동으로 읽기전용이 된다.
  • setter의 매개변수 타입이 지정되지 않았을 때, getter의 반환 타입에서 추론한다.
  • private 속성은 .연산자로 접근 가능하다.
// 클래스
class Person {
	// 필드
    name: string;
    private _age: number;
    readonly location: string = "Korea";
  
    // 생성자
    constructor(name: string, age: number) {
        this.name = name;
        this._age = age;
    };
    // get
      get age() {
    if (this._age === 0) {
      return '나이를 설정하십시오.';
    };

    return `나이는 ${this._age}세 입니다.`;
  };

// set
  set age(age) {
    if (typeof age === 'number') {
      this._age = age
    };

    this._age = 0;
  }
};
  
// 인스턴스
const student1 = new Person('Jeong', 56);
const student2 = new Person('Choi', 28);

console.log(student1);
console.log(student2);

console.log(student1.name);
console.log(student2.age);


profile
자라나라 나무나무

0개의 댓글