JavaScript OOP의 가상 속성 게터

액세서를 사용하면 객체에 실제로는 존재하지 않는 가상 속성을 만들 수 있습니다. 예제를 통해 살펴보겠습니다. 두 개의 공개 속성을 가진 클래스가 있다고 가정해 보겠습니다:

javascriptclass User {
  constructor(name, surn) {
    this.name = name;
    this.surn = surn;
  }
}

이름과 성을 포함하는 세 번째 속성을 만들어 봅시다. 이를 위해 액세서 속성을 생성합니다:

javascriptclass User {
  constructor(name, surn) {
    this.name = name;
    this.surn = surn;
  }
  
  get full() {
    return this.name + ' ' + this.surn;
  }
}

확인해 보겠습니다. 매개변수로 이름과 성을 전달하여 클래스의 객체를 생성합니다:

javascriptlet user = new User('john', 'smit');

공개 속성의 값을 출력해 보겠습니다:

javascriptconsole.log(user.name); // 'john'
console.log(user.surn); // 'smit'

이제 우리의 가상 속성 값을 출력해 보겠습니다:

javascriptconsole.log(user.full); // 'john smit'