반응형
- 배열 및 객체 반복문 사용-
배열과 객체의 반복문에 대해 알아보도록하자.
일반 for문을 사용할 순 있지만 제목에 나와있는것처럼 본문은 forEach문과 for~in문을 사용할 경우다.
1. 배열 반복문 (forEach)
var targetArr = ['mine','it','record','tistory'];
targetArr.forEach(function(item,index,arr){
console.log(item,index,arr[index]);
});
forEach 구문에 대해 알아보자.
forEach(function(item, index, arr){ ... })
for문과 다르게 forEach는 배열의 길이만큼 알아서 반복된다.
각각의 매개변수가 의미하는것은 다음과 같다.
item : 배열의 각 대상을 의미한다.
index : 배열의 순서를 의미한다. (현재 몇번째 반복문이 돌고있는지)
arr : forEach 반복문에 사용되는 배열을 의미한다.
2. 객체 반복문 (for ~ in)
var obj = {
a: 'mine',
b: 'it',
c: 'record'
};
for (var key in obj) {
console.log(key, obj[key]);
// a mine, b it, c record
}
구조 자체는 향상된 for문이랑 비슷하다.
키 값의 개수만큼 반복하여 객체의 키값을 뽑아낸다.
for~in 의 경우 hasOwnProperty와 같이 다루는 경우가 많은데,
주의해야할 점은 객체에 추가적으로 prototype을 선언해준다면 for~in은 그 prototype마저 접근해서 뽑아내기 때문에 기능이 망가질 수 있다.
반응형
댓글