[javascript] 객체 순회 후 결과 캐싱하기
자바스크립트에서 객체를 순회하면서 연산 결과를 캐싱하고 싶을 때가 있습니다. 이를 위해 객체 순회 후 결과를 캐싱하는 방법에 대해 알아보겠습니다.
객체 순회
먼저, for…in 루프나 Object.keys() 메서드를 사용하여 객체를 순회할 수 있습니다. 이를 통해 객체의 각 속성에 접근할 수 있습니다.
예를 들어, 아래와 같이 객체를 순회할 수 있습니다.
const obj = {a: 1, b: 2, c: 3};
for (let key in obj) {
console.log(key, obj[key]);
}
결과 캐싱
객체를 순회하면서 연산 결과를 캐싱하기 위해 Map 객체나 객체 프로퍼티를 활용할 수 있습니다.
Map 객체를 사용하는 예시는 아래와 같습니다.
const obj = {a: 1, b: 2, c: 3};
const cache = new Map();
for (let key in obj) {
if (!cache.has(key)) {
const result = obj[key] * 2; // 연산 예시
cache.set(key, result);
}
console.log(key, cache.get(key));
}
또 다른 방법으로 객체 프로퍼티를 사용하는 예시는 아래와 같습니다.
const obj = {a: 1, b: 2, c: 3};
const cache = {};
for (let key in obj) {
if (!cache[key]) {
const result = obj[key] * 2; // 연산 예시
cache[key] = result;
}
console.log(key, cache[key]);
}
마무리
객체를 순회하면서 연산 결과를 캐싱하는 방법은 객체의 속성을 효율적으로 처리할 수 있는 중요한 기술입니다. 이를 통해 반복적인 연산을 줄이고 성능을 향상시킬 수 있습니다.
이상으로 객체 순회 후 결과 캐싱하기에 대해 알아보았습니다.
참고: MDN Web Docs - JavaScript 객체