Javascript

JavaScript에서 forEach와 for문의 차이점

맥별 2024. 6. 30. 20:53
반응형

JavaScript를 사용하는 개발자라면 Array의 각 요소를 통해 작업하는 상황이 반드시 옵니다. (이미 경험해보셨을 것입니다.) 그렇기에 Array.forEach 문법과 for 문법 중 하나를 보셨을 것입니다.

저는 주로 for 문을 자주 사용했었는데, 같이 작업하시는 개발자분이 "저는 이런 문법 처음 봐요."라는 말씀을 듣고 "나도 처음 봤을 때 저런 느낌이었는데!"라고 생각했던 것이 떠올랐습니다. 그러면서 다음 질문이 떠올랐습니다:

"그러면 for 문과 forEach의 차이점이 무엇일까?"

1. 성능

forEach 문이 for 문보다 성능이 더 좋습니다. forEach는 배열의 크기를 구할 필요가 없기 때문입니다.

2. 동기/비동기 방식

for 문은 동기(sync) 방식이고, forEach는 비동기(async) 방식입니다. forEach 문은 비동기적으로 동작하여 로직 처리를 하지만, for 문은 동기 방식이므로 오류가 나면 반복이 멈춥니다.

3. 요소 변경

forEach 문은 반복문 내에서 배열이나 리스트 값을 변경하거나 수정할 수 없습니다. forEach 문은 읽기 전용이기 때문에 값을 변경할 수 없습니다.

결론

복잡한 로직이고 요소를 변경할 일이 없을 때에는 forEach 문을, 복잡하지 않고 요소를 변경해야 할 일이 있을 때에는 for 문을 사용하는 것이 좋습니다. 작업할 조건에 따라 적절한 문법을 선택하면 좀 더 수월하게 기능을 개발할 수 있습니다.

마치며

이 글을 통해 forEach와 for 문의 차이점을 이해하고, 상황에 맞는 적절한 문법을 선택하여 개발하는 데 도움이 되길 바랍니다.

반응형