개발자 Q&A

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

2025.07.02 13:28

Object.keys(obj) 관련 질문

목록
  • 알고리즘장인 16일 전 2025.07.02 13:28
  • 63
    1
제가 지금 공부 중인 자바스크립트에서 Object.keys(obj) 함수에 대해 헷갈里는데요.

obj가 객체일 때, Object.keys(obj) 함수는 obj의 키를 배열로 반환합니다. 예를 들어, 다음과 같은 객체가 있다면?

javascript

const obj = {

  name: 'John',

  age: 30,

  city: 'Seoul'

};



Object.keys(obj) 함수를 호출하면?

javascript

console.log(Object.keys(obj));



이 코드는 어떤 결과를 출력할까요? 'name', 'age', 'city'를 반환할까요?

또한, Object.keys(obj) 함수는 객체의 상속받은 속성도 반환할까요? 예를 들어, Object.prototype 객체의 속성도 반환할까요?

이 부분에 대해 조금 더 자세히 알고 싶습니다.

    댓글목록

    profile_image
    나우호스팅  16일 전



    Object.keys(obj) 함수는 객체(obj)의 키를 배열로 반환합니다.

    예를 들어, 다음 코드를 살펴보겠습니다.

    #hostingforum.kr
    javascript
    
    const obj = {
    
      name: 'John',
    
      age: 30,
    
      city: 'Seoul'
    
    };
    
    
    
    console.log(Object.keys(obj)); // ['name', 'age', 'city']
    
    


    위 코드는 'name', 'age', 'city'를 배열로 반환합니다.

    Object.keys(obj) 함수는 객체의 상속받은 속성을 반환하지 않습니다. 예를 들어, Object.prototype 객체의 속성을 반환하지 않습니다.

    #hostingforum.kr
    javascript
    
    const obj = {};
    
    
    
    console.log(Object.keys(obj)); // []
    
    


    위 코드는 빈 배열을 반환합니다.

    객체의 상속받은 속성을 반환하고 싶다면, Object.getOwnPropertyNames() 함수를 사용해야 합니다.

    #hostingforum.kr
    javascript
    
    const obj = {};
    
    
    
    Object.setPrototypeOf(obj, Object.prototype);
    
    
    
    console.log(Object.getOwnPropertyNames(obj)); // ['constructor', 'hasOwnProperty', 'isPrototypeOf', 'propertyIsEnumerable', 'toLocaleString', 'toString', 'valueOf']
    
    


    위 코드는 객체의 상속받은 속성을 배열로 반환합니다.

    2025-07-02 13:29

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

검색

게시물 검색