⚡ 고차함수(자신의 매개변수에 콜백함수를 전달받음)
🪐 원본 배열을 탐색하며 콜백함수를 반복 호출
forEach
forEach (callback, thisArg)
a = [10, 11, 12, 13, 14, 15];
a.forEach(function (value, index) {
console.log(value, index, this);
}, [1, 2]);
- 배열 요소들을 탐색하며 콜백함수를 반복하여 호출
map
map (callback, thisArg)
a = [10, 11, 12, 13, 14, 15];
let answer = a.map(function (value, index) {
if (value % 2 == 0) {
return value;
}
}, [1, 2]);
console.log(answer); // [10, undefined, 12, undefined, 14, undefined]
- 원본 배열을 탐색하며 콜백함수가 return한 값을 요소로 새로운 배열을 생성
- 새롭게 생성한 배열과 원본 배열의 길이가 같음 주의
filter
filter (callback, thisArg)
a = [10, 11, 12, 13, 14, 15];
let answer = a.filter(function (value, index) {
return value % 2 == 0;
}, [1, 2]);
console.log(answer); // [10, 12, 14]
4. reduce
reduce (callback, initialValue)
a = [10, 11, 12, 13, 14, 15];
let answer = a.reduce(function (accumulate, value) {
return accumulate + value;
}, 0);
console.log(answer);
// 0 + 10
// 10 + 11
// 21 + 12
// 33 + 13
// 46 + 14
// 60 + 15
// 75