[javascript] 객체 순회에서의 this 사용하기
객체 순회
자바스크립트에서 객체를 순회하는 방법은 여러 가지가 있습니다. 여기서는 for…in 루프와 Object.keys 및 forEach 메서드를 사용하는 방법에 대해 설명하겠습니다.
for…in 루프
for…in 루프를 사용하여 객체를 순회할 때, this 키워드는 현재 반복 중인 속성이 속한 객체를 가리킵니다.
const person = {
name: 'John',
age: 30,
occupation: 'Developer'
};
for (const key in person) {
console.log(this.name); // 'John'
console.log(this.age); // 30
console.log(this.occupation); // 'Developer'
}
위의 예제에서 this는 현재 반복 중인 key에 대한 값을 가리키며, 루프 내에서 사용됩니다.
Object.keys 및 forEach 메서드
Object.keys 메서드를 사용하여 객체의 키를 배열로 가져온 다음 forEach 메서드를 사용하여 각 키에 대해 작업을 수행할 수 있습니다. 이 경우에도 this 키워드는 현재 반복 중인 키가 속한 객체를 가리킵니다.
const person = {
name: 'John',
age: 30,
occupation: 'Developer'
};
Object.keys(person).forEach(function(key) {
console.log(this.name); // 'John'
console.log(this.age); // 30
console.log(this.occupation); // 'Developer'
}, person);
위의 예제에서는 forEach 메서드의 두 번째 인수로 person을 전달하여 this가 person 객체를 가리키도록 했습니다.
참고 자료
이 문서는 MDN 웹 문서를 참고하여 작성되었습니다.
이렇게 자바스크립트에서 객체 순회 시 this 사용하는 방법에 대해 알아보았습니다.