for 반복문에는 여러가지 응용하여 쓰는 반복문 메서드들이 있다.
forEach
, for in
, for of
대해 각각 알아보자
let arr = ['A', 'B', 'C', 'D']
arr.forEach(function(arr, index, arr2) {
console.log(arr,index,arr2[index+1]);
})
// A 0 B
// B 1 C
// C 2 D
// D 3 undefined
forEach
는 배열 메서드이므로 오로직 배열에서만 사용이 가능한 메서드이다.
반복문과 비슷한 기능이지만 엄연히 메서드이므로 반복문보다 배열의 메서드라고 보아야 한다.
let arr = {
'A' : 1,
'B' : 2,
'C' : 3,
'D' : 4
}
for(let key in arr) {
console.log(key ,arr[key])
}
// A 1
// B 2
// C 3
// D 4
for in
은 객체에 있는 key를 접근하여 key와 value 순회하는 특징을 가지고 있다.
let arr = ['A', 'B', 'C', 'D']
for(let value of arr) {
console.log(value)
}
// A
// B
// C
// D
for of
는 사실상 for (let i = 0; i < result; i++) {} 평상시 사용하는 반복문 구조를
생략하여 사용한 문법 구문이며, 배열 인덱스를 따로 지정하지 않아도 순차적으로 출력되는 특징을 가지고 있다.
forEach
, for in
, for of
모두 for 반복문과 비슷한 메커니즘 특징을 가지고 있으며,
결국 순회하여 빠져나오는 반복 구문이다.
굳이 for 반복문으로 활용하여도 똑같은 결과이나 코드 간편화를 원한다면 상황에 알맞게 사용하도록 하자.