Javascript&Typescript
[JS] for & forEach & map
alexrider94
2021. 2. 6. 20:00
1. for()
- 조건에 부합하면서 데이터 순회
- 중간에 break; 로 반복문을 중단
for ([initialization]; [condition]; [final-expression])
statement
2. forEach()
- 각 요소에 대해 callback을 실행 ( 각 array의 element마다 제공된 함수를 실행)
- break; 문을 사용할 수 없음.
- 반환이 없음.
array.forEach(callback(currentValue[, index[, array]])[, thisArg])
3. map()
- 각 요소에 대해 callback을 실행
- 메모리를 할당하고 *새 배열을 리턴.
- break; 문을 사용할 수 없음.
array.map(callback(currentValue[, index[, array]])[, thisArg])
4. 예제
let dataA = [1, 2, 3, 4];
let result = [];
// for
for (let i = 0; i < dataA.length; ++i) {
result.push(dataA[i]);
}
// forEach
dataA.forEach((v) => {
result.push(v);
})
// map
dataA.map((v) => {
result.push(v);
})
위의 속도 성능테스트를 보고 어느것이 좋다를 판단하기보다는 각 상황에 맞게 사용하는것이 옳다.
* 함수형 프로그래밍을 선호하면 map()을 사용하는게 좋음.