for과 forEach는 둘 다 반복문입니다. 같은 작업을 반복 수행하는 데 사용되는 문법입니다.
for문
for문은 가장 기본적인 반복문으로 초기화, 조건식, 반복 후 실행할 코드를 정의하여 반복 작업을 수행합니다.
- 초기화: 반복문이 시작하기 전에 단 한 번 실행되는 코드입니다. 주로 반복 변수를 초기화하는 용도로 사용됩니다.
- 조건식: 반복이 계속되기 위해 평가되는 조건을 지정합니다. 조건식이 `true`인 동안 반복이 계속됩니다.
- 반복 후 실행할 코드: 각 반복이 끝난 후에 실행되는 코드로, 주로 반복 변수를 갱신하는 용도로 사용됩니다.
for(초기화; 조건식; 반복 후 실행할 코드){
//반복적으로 실행될 코드
}
예시
for (let i = 0; i < 3; i++) {
console.log(i);
// 0, 1, 2 가 차례로 출력됨
}
forEach메서드
forEach 메서드는 배열의 각 요소에 대해 지정된 함수를 한 번씩 실행하는 배열 메서드입니다. 배열의 모든 요소를 순회하면서 해당 작업을 수행합니다.
array.forEach(function(currentValue, index, array) {
// currentValue: 현재 순회 중인 요소의 값
// index: 현재 순회 중인 요소의 인덱스
// array: 순회되는 배열 자체
// 실행될 코드
});
예시:
const array = [1, 2, 3, 4, 5];
array.forEach(function(element, index) {
console.log(`Index: ${index}, Value: ${element}`);
});
// 출력:
// Index: 0, Value: 1
// Index: 1, Value: 2
// Index: 2, Value: 3
// Index: 3, Value: 4
// Index: 4, Value: 5
for문과 forEach의 차이점
1. for 문은 모든 종류의 반복 작업에 사용할 수 있으며, 배열뿐만 아니라 객체 등의 자료구조를 순회하는 데에도 사용될 수 있습니다. forEach 메서드는 배열에서만 사용 가능합니다.
2. for 문은 반복을 제어하기 위해 초기화, 조건식, 반복 후 실행할 코드를 사용하여 직접 제어할 수 있습니다. 반면 forEach 메서드는 내부적으로 반복을 처리하므로 개발자가 반복 흐름을 직접 제어할 수 없습니다.
3. for 문은 break를 사용하여 반복을 중지할 수 있습니다. forEach 메서드는 중간에 반복을 멈출 수 있는 방법이 없습니다. (return을 사용하면 해당 콜백만 종료되고, 반복은 계속됩니다)
따라서, 배열을 순회하며 간단한 작업을 수행할 때는 forEach 메서드를 사용하는 것이 편리하고 가독성이 좋습니다. 반면, 더 복잡한 반복 작업이나 다른 자료구조를 다룰 때는 for 문이 더 적합할 수 있습니다.
선택은 작업의 성격과 개발자의 취향에 따라 결정하면 됩니다.
'JAVASCRIPT' 카테고리의 다른 글
[JS] 가장 효율적인 배열 랜덤 정렬 방법 (0) | 2024.09.27 |
---|---|
[JS]객체를 배열로 바꾸는 Object.keys, values, entries에 대한 정리 (0) | 2023.08.10 |
[JS] reduce로 배열 수정하기 reduce에 관한 이해, 사용법 및 예제 (0) | 2023.08.03 |
2진수 10진수 등 변 및 2진수 앞에 0넣기 (1) | 2023.06.06 |
JS window.close 이후 부모창 새로고침하는 방법, 창 닫은 후 새로고침 (0) | 2023.05.17 |