Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript에서 map() 함수로 객체를 배열처럼 다루는 방법

JavaScript에서 객체를 배열처럼 순회하며 처리하고 싶다면 Object.keys(), Object.values() 그리고 map() 메서드를 함께 활용하면 됩니다. 객체의 키 목록을 배열로 가져온 뒤, map()을 사용해 각 키에 해당하는 값을 손쉽게 변환하거나 출력할 수 있습니다.

예제 코드

const object = {
    name: 'John',
    age: 21,
    countryName: 'US',
    subjectName: 'JavaScript'
}
const allKeysOfObject = Object.keys(object);
console.log("객체의 모든 키 = " + allKeysOfObject);
const allValues = Object.values(object);
console.log("객체의 모든 값 = " + allValues);
console.log("map() 활용 결과는 다음과 같습니다:");
allKeysOfObject.map(k => { console.log(object[k]) })

실행 방법

위 프로그램을 실행하려면 Node.js 환경에서 다음 명령어를 입력합니다.

node fileName.js

여기서는 파일 이름이 demo185.js라고 가정합니다.

출력 결과

위 코드를 실행하면 아래와 같은 결과가 출력됩니다.

PS C:\Users\Amit\javascript-code> node demo185.js
객체의 모든 키 = name,age,countryName,subjectName
객체의 모든 값 = John,21,US,Javascript
map() 활용 결과는 다음과 같습니다:
John
21
US
JavaScript

코드 설명

Object.keys(object)는 객체가 가진 모든 키를 문자열 배열로 반환합니다. 반환된 배열에 map()을 적용하면 각 키를 인덱스처럼 사용해 object[k] 형태로 객체의 값에 접근할 수 있습니다. 이 방식은 일반적인 배열의 map()처럼 객체의 데이터를 순회하고 변환할 때 매우 유용합니다. 또한 Object.values()를 사용하면 키를 거치지 않고 곧바로 값들만 배열 형태로 얻을 수 있어 상황에 따라 더 간결한 코드를 작성할 수 있습니다.