JavaScript 객체 지향 프로그래밍의 접근자 속성

객체 속성에는 두 가지 유형이 있습니다.

첫 번째 유형은 데이터 속성(data properties)입니다. 우리는 이미 이것들을 어떻게 다루는지 알고 있습니다. 지금까지 우리가 사용한 모든 속성들은 데이터 속성이었습니다.

두 번째 유형의 속성은 아직 살펴보지 않았습니다. 이것이 접근자 속성(accessor properties)입니다. 본질적으로 이것은 값을 할당하고 검색하는 데 사용되는 함수이지만, 외부 코드에서는 일반적인 객체 속성처럼 보입니다.

접근자 속성은 메서드 선언 시 사용된 키워드 get과 set을 통해 생성됩니다:

javascriptclass User {
  get name() {
  
  }
  set name(name) {
  
  }
}

이러한 선언의 결과로 우리 클래스는 속성 name을 가지게 됩니다. 이때 이 속성을 읽으려고 하면 get을 통해 선언된 메서드가 호출됩니다:

javascriptlet name = user.name;

쓰기를 시도하면 set을 통해 선언된 메서드가 호출됩니다:

javascriptuser.name = 'john';
Задание 1

다음 클래스가 주어졌습니다:

javascriptclass Employee {
  get name() {
    console.log('get');
  }
  set name(name) {
    console.log('set');
  }
}

이 클래스의 객체를 생성하고 속성 name에서 데이터를 읽고 쓰려고 시도해 보세요.