forEach 메서드에 대해 알아보자

윤지섭·2023년 8월 31일

forEach메서드

forEach메서드는 배열에서 사용가능한 메서드로 인자의 콜백 함수를 배열 요소 각각에 대해 실행하는 메서드입니다.

문법

var array = ['a','b','c','d','e'];

arr.forEach((v,i,arr)=>{
console.log(v);
console.log(i);
console.log(arr);
});

결과
>
'a'
0
['a','b','c','d','e']
'b'
1
['a','b','c','d','e']
'c'
2
['a','b','c','d','e']
'd'
3
['a','b','c','d','e']
'e'
4
['a','b','c','d','e']

이와같이 forEach안의 콜백함수의 인자는 각각
첫번째 인자는 현재 값
두번째 인자는 index
세번째 인자는 현재 배열값
이라고 볼 수 있겠습니다.

forEach 조금더 활용하기

forEach메서드를 사용할때 포함하고싶지않은 값이나 index가 있다면 return 을 사용하면 됩니다

var array = ['a','b','c','d','e'];

var array = ["a", "b", "c", "d", "e"];

array.forEach((v, i, arr) => {
  if (i == 1) {
    return;
  }
  console.log(v);
});

결과
>
a
c
d
e

이런식으로 특정 index의 값만을 출력하지 않거나

var array = ["a", "b", "c", "d", "e"];

var check = "c";
var stop = false;

array.forEach((v, i, arr) => {
  if (stop) return;
  if (v == "c") {
    stop = true;
  }
  console.log(v);
});

결과
>
a
b
c

특정조건에서 더이상 실행되지 않게 설정할 수 있습니다.

마치며

forEach는 배열의 요소들을 이용하여 콜백함수를 사용하는 메서드로
map과는 달리 배열을 반환하지 않기 때문에 배열요소들을 활용만 하기위해서 사용하면 될것 같습니다.

profile
개발자를 꿈꾸는 사람

0개의 댓글