JavaScript를 사용하다보면 객체의 Property를 나열하는 경우를 자주 만나게 됩니다.
Array라면 순서가 있어 나열이 가능하지만 Object는 Key-Value로 구성되어 있어 순서가 보장되지 않는데 어떻게 나열할 수 있을까요?
- Object.keys (for ... in) - key 배열 반환
- Object.values - value 배열 반환
- Object.entries - [key, value] 배열 반환
Object 객체는 객체의 Property를 나열하기 위에 keys, values, entries 3가지 함수를 제공합니다.
const obj = { a : 'apple', b : 'banana', c : 'coconut' }
const keys = Object.keys(obj)
// ['a', 'b', 'c']
const values = Object.values(obj)
// ['apple', 'banana', 'coconut']
const entries = Object.entries(obj)
// [['a', 'apple'], ['b', 'banana'], ['c', 'coconut']]
다음 함수에 노출되기 위해선 Property의 enumerable 속성이 true 이여야 합니다.
enumerable 속성이 생소하다면 아래 경로를 참고해주세요.
반응형
'프로그래밍언어 > JavaScript' 카테고리의 다른 글
[JavaScript] Promise - callback 우아하게 처리하기 (0) | 2022.06.16 |
---|---|
[JavaScript] Map & WeakMap, Set & WeakSet (0) | 2022.06.16 |
[JavaScript] Iterator & Generator (0) | 2022.06.15 |
JavaScript // 개념 // ES6 // 심볼(Symbol) (0) | 2018.08.06 |
JavaScript // 개념 // ES6 // var, let, const (0) | 2018.07.18 |