<Javascript> Object를 Array처럼 순회하기

Junghyun Park·2021년 1월 14일
0
post-thumbnail

배경

  • 기본적으로 Array는 순서가 있는 데이터가 인덱스 순서에 따라 [ ] 안에 정렬되어 있어, for (var i; i < arrary.length ; i++) 식으로 순회하거나 .forEach, .map, .find, .reduce 등 유용한 기능을 활용가능하다.
  • 그러나, Object는 { } 안에 key : value 형식의 데이터를 취하고 있어, Array method 사용이 불가하다.
  • 그럼에도, Object를 순회하며 callback function을 실행해야 하는 경우가 종종 있으므로, 몇 가지 방법을 기억해두자~!

방법 1

: object => array로 변환하여 array method 활용하는 방법

  • Object.keys(object명) : Object 내 각 key값을 배열로 리턴
  • Object.values(object명) : Object 내 각 value값을 배열로 리턴
  • Object.entries(object명) : Object의 key와 value의 쌍으로 이루어진 길이 2짜리 배열로 이루어진, 배열을 리턴 => 제일 유용

방법 2

: for-in 구문을 활용하는 방법

const obj = {
 name: 'melon',
 weight: 4350,
 price: 16500,
 isFresh: true
}


for (let key in obj) {
 const value = obj[key]


 console.log(key)
 console.log(value)
}
  • object는 1씩 증가하는 index 기준으로 정렬되어 있지 않고,
    보다 형식이 자유로운 key 항목으로 정렬되고 접근하도록 되어 있으므로,
    for in 문으로 object의 key를 차례로 가져다가 const value 라는 새로운 변수에 value들을 array 형태로 저장하고 key와 value를 각각 출렬 할 수 있음
profile
21c Carpenter

0개의 댓글