TypeScript(constructor & initialize)

Dev_Go·2022년 7월 12일
0

TypeScript Essentials

목록 보기
24/24
post-thumbnail

constructor & initialize

// strictPropertyInitialization : false
class Person {
  name: string;
  // !를 넣으면 number가 할당되지 않아도 에러를 일으키지 않겠다.
  age!: number;
}

const p1: Person = new Person();
console.log(p1); // Person1 {}
person.age = 20;
console.log(person.name); // undefined
  • 생성자 함수가 없으면, 디폴트 생성자가 불린다.
  • 프로그래머가 만든 생성자가 하나라도 있으면, 디폴트 생성자는 사라진다.
  • strict 모드에서는 프로퍼티를 선언하는 곳 또는 생성자에서 값을 할당해야 한다.
  • 프로퍼티를 선언하는 곳 또는 생성자에서 값을 할당하지 않는 경우에는 ! 를 붙여서 위험을 표현한다.
  • 클래스의 프로퍼티가 정의되어 있지만, 값을 대입하지 않으면 undefined 이다.
  • 생성자에는 async 를 설정할 수 없다.
profile
프론트엔드 4년차

0개의 댓글