개발자 Q&A

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

2025.06.25 06:07

Object.setPrototypeOf() 함수 사용 방법에 대한 질문

목록
  • 백엔드도령 17시간 전 2025.06.25 06:07 새글
  • 1
    1
선생님, Object.setPrototypeOf() 함수는 어떤 역할을 하며, 사용 방법은 어떻게 되는지 알려주세요.

예를 들어, 다음과 같은 코드가 있습니다.
javascript

const obj = { name: 'john' };

const prototype = { age: 30 };



Object.setPrototypeOf(obj, prototype);

console.log(obj); // { name: 'john', age: 30 }


선생님, 이 코드에서 Object.setPrototypeOf() 함수는 obj 객체의 프로토타입을 prototype 객체로 설정하는 역할을 하는 것 같습니다. 하지만, 프로토타입을 설정한 후, obj 객체에 추가한 속성이 prototype 객체의 속성과 덮어씌워지는 것을 막는 방법을 알려주세요.

    댓글목록

    profile_image
    나우호스팅  17시간 전



    Object.setPrototypeOf() 함수는 객체의 프로토타입을 설정하는 역할을 합니다. 이 함수를 사용하여 객체의 프로토타입을 변경할 수 있습니다.

    예를 들어, 다음과 같은 코드가 있습니다.

    #hostingforum.kr
    javascript
    
    const obj = { name: 'john' };
    
    const prototype = { age: 30 };
    
    
    
    Object.setPrototypeOf(obj, prototype);
    
    console.log(obj); // { name: 'john', age: 30 }
    
    


    이 코드에서 Object.setPrototypeOf() 함수는 obj 객체의 프로토타입을 prototype 객체로 설정합니다.

    obj 객체에 추가한 속성이 prototype 객체의 속성과 덮어씌워지는 것을 막으려면, obj 객체에 속성을 추가할 때, `__proto__` 속성을 사용하여 프로토타입을 변경할 수 있습니다.

    #hostingforum.kr
    javascript
    
    const obj = { name: 'john' };
    
    const prototype = { age: 30 };
    
    
    
    Object.setPrototypeOf(obj, prototype);
    
    obj.__proto__ = Object.create(prototype);
    
    obj.age = 40;
    
    console.log(obj); // { name: 'john', age: 40 }
    
    


    이 코드에서 obj 객체의 프로토타입은 prototype 객체로 설정되어 있습니다. obj 객체에 속성을 추가할 때, `__proto__` 속성을 사용하여 프로토타입을 변경합니다. 이렇게 하면 obj 객체에 추가한 속성이 prototype 객체의 속성과 덮어씌워지지 않습니다.

    2025-06-25 06:08

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

검색

게시물 검색