TIL_028_210312

James·2021년 3월 12일
0

TILs

목록 보기
28/40

for loop vs. forEach

js를 공부를 시작하면서 가장 먼저 반복문의 기본중의 기본인 for문을 배우고 난 후
ES6 문법인 고차함수 forEach를 배웠고
잘못된 믿음 한 가지를 가지고 있었다.

for문의 간결한 표현방식이 forEach구나!
for문으로 구현한 모든 코드를 forEach로 바꿔서 구현할 수 있겠다!

오늘 깨달은 바로는 이런 경우는 절 때 for문 대신 forEach를 사용해선 안된다.

반복문 내부에 return이나 break 처럼 반복문을 중간에 끝내는 키워드가 있는 경우
forEach와 같이 배열의 인자 각각에 순차적으로 콜백함수를 적용시키는 고차함수는 사용해선 안된다.

왜냐하면 고차함수 내에 들어있는 반복문은 중간에 return이나 break을 만났다고 해서 멈추지 않고
마지막 요소까지 순회를 반드시 마치게 되어 있다. 만약 저런 경우에도 고차함수를 쓴다면 전혀 의도와는 다른 결과를 보게 될 것이다..

profile
웹개발자 James 입니다.

0개의 댓글