오늘로 Underbar 챕터가 끝이났다.
끝나면서 자주사용하게될 콜백함수들에 대해서 배우게 되었다.
실전에서 많이 사용한다고하니 잘 익혀두기위해 이곳에 또 남겨두겠다.
filter, map, reduce는 TIL Day-15에서 썼으니 그곳에서 확인해보자
반복문 에는 여러가지가 있다 while, for, for...in, for...of
이번에 얘기해볼건 forEach이다.
forEach()
는 주어진 함수를 배열의 각각의 요소를 인자로 넣은 값을
실행하는 반복문이다.
함수를 인자로 전달하는 콜백함수를 사용하고
이 콜백함수는 요소의 값, 요소의 인덱스, 순회중인 배열을 인자로 넣을 수 있다.
이 중 인덱스와 배열은 옵션이라 넣어도 되고 안넣어도 된다.
처음 봤을때는 for...of
랑 뭐가 다른건지 구분이 잘 안됐었다.
서로의 장단점이 존재하는데 for...of
는 break
와 같은 중단문을 사용해서 원하는 값을 찾았을 때 반복문을 강제로 중단시킬 수 있고
forEach
의 경우 조건식을 잘못 적었을때 무한 반복되는 등의
오류의 가능성을 낮출수 있다.
또한 for...of
의 경우 반복 가능한 객체 에서는 모두 사용 가능한 반면
forEach
는 배열에서만 사용이 가능하다.
어느 반복문을 쓰든 그건 상관없는듯하다.
둘 중 보기 편하게 작성할 수 있는 능력껏 작성하면 된다.
MDN Array.prototype.forEach()
MDN for...of
forEach vs for Loops in JavaScript: What's the Difference?