• 카테고리

    질문 & 답변
  • 세부 분야

    프론트엔드

  • 해결 여부

    미해결

Reactivity 강의에서 Object.defineProperty 관련 질문입니다!

21.08.01 14:57 작성 조회수 97

1

안녕하세요. 아래 강의 내용 중 궁금한 점이 있어 질문드립니다.
- 강의 : Reactivity 구현
- 내용 :
var viewModel = {}; 와 같이 선언 후,
Object.defineProperty(viewModel, 'str', ...) 과 같이 str이라는 속성이 정의가 되었잖아요?
그리고 나서 크롬으로 실행한 다음에, 콘솔에서 viewModel.str = 'hello'; 라고 입력하면
할당했으니 "할당 hello"라고 출력이 됩니다.
그런데 그 다음에, viewModel.str을 입력하면 "접근"이라고는 나오는데, str의 값인 "hello"도 출력되어야 하는 것은 아닌가요?
Object.defineProperty를 통해 정의된 속성은 유지되는게 아니라 그 안에서만 유지되는 지역변수와 같은 개념으로 이해하면 될까요?

답변 1

답변을 작성해보세요.

0

안녕하세요 지웅님, 좋은 질문이네요. 말씀하신 viewModel.str 코드로 속성을 접근하시면 접근에 해당하는 get() {} 메소드의 로직만 실행됩니다 :)