객체의 속성 열거하기

객체의 속성 열거하기

객체의 속성을 열거할 때 사용할 수 있는 방법들을 정리해보자.

  • Object.keys
    : 객체 자신의 속성 중 열거 가능한(enumerable) 속성의 이름을 배열로 반환
  • Object.values
    : 객체 자신의 속성 중 열거 가능한(enumerable) 속성의 속성 값을 배열로 반환
  • Object.entries
    : 객체 자신의 속성 중 열거 가능한(enumerable) 속성의 이름과 값을 배열로 반환
  • Object.getOwnPropertyNames
    : 객체 자신의 모든 속성의 이름을 배열로 반환합니다. 열거 불가능한 속성도 포함
  • for...in 구문
    : 객체 자신의 속성 및 상속받은 속성 중 열거 가능한(enumerable) 속성의 이름을 배열로 반환

경우에 따라 사용할 방법

  • 대개의 경우 Object.keys를 사용하면 되지만,
  • 상속받은 속성까지 열거하고 싶을 때는 for...in을 사용
  • 열거 불가능한 속성도 열거하고 싶을 때는 Object.getOwnPropertyNames를 사용
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
const seasonObj = {
friend: "Mike",
think: "It's good weather! Let's hangout together!"
};

Object.keys(seasonObj);
// [ 'friend', 'think' ]

Object.values(seasonObj);
// [ 'Mike', 'It's good weather! Let's hangout together!' ]

Object.values(seasonObj).join(",");
// 'Mike,It's good weather! Let's hangout together!'
Object.entries(seasonObj);
// [ [ 'friend', 'Mike' ],
// [ 'think', 'It's good weather! Let's hangout together!' ] ]

참고 링크