타입스크립트 클래스 생성자 예제
타입스크립트( TypeScript )에서 클래스의 생성자( Constructor )는 클래스가 메모리에 생성( Instance )될 때 초기 값을 설정하기 위해 사용한다.
생성자는 클래스 내부에서 `constructor`라는 키워드를 사용하며, 객체가 생성될 때 자동으로 한 번 호출된다.
생성자의 매개변수를 이용하면 외부에서 데이터 값을 전달받아 클래스의 속성에 할당할 수 있으며, 이를 활용하면 같은 클래스를 사용해 여러 객체를 만들 수 있다.
생성자에서는 클래스의 프로퍼티를 초기화하거나, 객체 생성 시 필요한 값을 설정하는 작업을 할 수 있다.
타입스크립트에서는 생성자 매개변수, 클래스 속성에 데이터 타입을 지정할 수 있으며, 잘못된 타입의 값이 전달되는 것을 컴파일 단계에서 확인할 수 있다.
생성자 매개변수는 접근 제한자 및 속성 제어를 사용할 수 있다.
⊙
const user = new User("Kim", 30);⊙
class User {
name: string;
age: number;
constructor(name: string, age: number) {
this.name = name;
this.age = age;
}
}⊙
const user = new User("Kim", 30);
console.log(user.name);
console.log(user.age);⊙
this.name = name;
this.age = age;⊙
class User {
name: string;
constructor(name: string) {
this.name = name;
}
}⊙
class Product {
name: string;
price: number;
constructor(name: string, price: number) {
this.name = name;
this.price = price;
}
}
const product = new Product("Keyboard", 50000);
console.log(product.name);
console.log(product.price);
const product1 = new Product("Keyboard", 50000);
const product2 = new Product("Mouse", 30000);⊙
class User {
name: string;
age: number;
constructor(name: string, age: number) {
this.name = name;
this.age = age;
}
}
const user = new User("Kim", 30);
const user = new User("Kim", "30"); /* 오류 */⊙
class User {
name: string;
age: number;
constructor(name: string, age: number = 0) {
this.name = name;
this.age = age;
}
}
const user1 = new User("Kim", 30);
const user2 = new User("Lee");⊙
class User {
name: string;
age: number;
constructor(name: string, age: number) {
this.name = name;
this.age = age;
}
}
class User {
constructor(
public name: string,
public age: number
) {}
}
const user = new User("Kim", 30);
console.log(user.name);
console.log(user.age);⊙
class User {
constructor(
public readonly id: number,
public name: string
) {}
}
const user = new User(1, "Kim");
user.name = "Lee";
user.id = 2;
댓글
댓글 쓰기