일반 멤버 변수처럼 사용 가능
어떠한 계산을 해야할 때 유용하게 사용 가능
class User1 {
firstName: string;
lastName: string;
fullName: string;
constructor(firstName: string, lastName: string) {
this.firstName = firstName;
this.lastName = lastName;
this.fullName = `${firstName} ${lastName}` // 한번 할당 되면 그대로 고정
}
}
const user1 = new User1('sumin', 'hong');
console.log(user1);
user1.firstName = 'eunmi';
console.log(user1.fullName) // sumin hong
class User2 {
firstName: string;
lastName: string;
get fullName(): string {
return `${this.firstName} ${this.lastName}`
}
constructor(firstName: string, lastName: string) {
this.firstName = firstName;
this.lastName = lastName;
}
}
const user2 = new User1('sumin', 'hong');
console.log(user2);
user2.firstName = 'eunmi';
console.log(user2.fullName) // eunmi hong
class User {
get fullName(): string {
return `${this.firstName} ${this.lastName}`;
}
private internalAge = 4;
get age(): number {
return this.internalAge;
}
set age(num: number) {
if (num < 0) {
}
this.internalAge = num;
}
constructor(private firstName: string, public lastName: string) { }
}
const user = new User('Steve', 'Jobs');
user.age = 6;
console.log(user.fullName);