[TypeScript] 효율적으로 클래스 필드 속성 초기화하는 방법

Lily·2022년 9월 1일
0

TypeScript

목록 보기
2/3
  • 아래와 같이 매개변수에 초기화를 진행하여 코드의 수를 줄일 수 있다.

Before

class Department {
  private id: string;public name: string;private employees: string[] = [];

  constructor(id: string, n: string) {
    this.id = id;this.name = n;}

  describe(this: Department) {
    console.log('Department' + this.name);
  }

}

const accounting = new Department('Accounting');

After

class Department {
  //   private id: string; ✅
  //   private name: string; ✅
  private employees: string[] = [];

// public을 붙여야하는 이유는 정확히 동일한 이름으로 속성을 만들고 싶다고 타입스크립트에게 알려주는 명령이기 때문이기도 하다.
  constructor(private id: string, public name: string) {
    //   this.id = id; ✅
    //   this.name = n; ✅
  }

  describe(this: Department) {
    console.log(`Department (${this.id}): ${this.name}`);
  }

}

const accounting = new Department('d1', 'Accounting');

0개의 댓글