열거 (Enumeration)
for in 구문을 사용해 객체에 있는 모든 속성의 이름을 열거할 수 있다.
이러한 열거 방법에는 함수나 프로토타입에 있는 속성 등 모든 속성이 포함되기 때문에 필터링 필요
일반적으로 hasOwnProperty 메소드와 함수를 배제하기 위한 typeof 사용
var name;
for (name in another_stooge) {
if (typeof another_stooge[name] !== 'function') {
document.writeln(name + ': ' + another_stooge[name]);
}
}for in 구문을 사용하면 속성들이 이름순으로 나온다는 보장이 없음
만약 특정 순으로 속성 이름들이 열거되기를 원한다면 다음 예처럼 속성이 열거되기 원하는 순서를 특정 배열로 지정하고 이 배열을 이용해 객체의 속성 열거 가능
var i;
var properties = [
'first-name',
'middle-name',
'last-name',
'profession'
];
for (i=0; i<properties.length; i++) {
document.writeln(properties[i] + ': ' + another_stooge[properties[i]]);
}Last updated
Was this helpful?