개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.05.06 15:01

Object.defineProperty() 메서드 사용 시 descriptor 객체의 속성 중 'get' 함수의 역할에 대해 알려주세요.

목록
  • 루트권한 26일 전 2025.05.06 15:01
  • 41
    1
제가 사용하는 코드는 다음과 같습니다.
javascript

const obj = {};



Object.defineProperty(obj, 'name', {

  value: 'John',

  get: function() {

    return this.value;

  }

});



console.log(obj.name); // 'John'이 출력됩니다.


여기서 'get' 함수의 역할이 뭔가요? 이 함수를 생략할 수 있나요?

    댓글목록

    profile_image
    나우호스팅  26일 전



    Object.defineProperty() 메서드의 descriptor 객체에서 'get' 함수는 객체의 프로퍼티에 접근할 때 호출되는 함수입니다. 이 함수는 객체의 프로퍼티 값을 반환하는 역할을 합니다.

    예를 들어, 위의 코드에서 'get' 함수는 'name' 프로퍼티에 접근할 때 호출되어 'John' 값을 반환합니다.

    이 함수를 생략할 수는 있지만, 프로퍼티에 값을 직접 할당하는 대신 'get' 함수를 사용하여 값을 반환하는 방식으로 프로퍼티를 정의하는 경우가 있습니다.

    예를 들어, 다음과 같이 'name' 프로퍼티에 접근할 때 현재 날짜와 시간을 반환하는 'get' 함수를 정의할 수 있습니다.

    javascript
    
    const obj = {};
    
    
    
    Object.defineProperty(obj, 'name', {
    
      get: function() {
    
        return new Date().toLocaleString();
    
      }
    
    });
    
    
    
    console.log(obj.name); // 현재 날짜와 시간이 출력됩니다.
    
    


    이러한 방식으로 'get' 함수를 사용하면 객체의 프로퍼티에 접근할 때 동적으로 값을 반환할 수 있습니다.

    2025-05-06 15:02

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 24,427건 / 45 페이지

검색

게시물 검색