객체 중에서도 특급 대우를 받는 객체, 함수가 이에 포함된다.
1. 변수에 할당(assignment)할 수 있다.
2. 다른 함수의 전달인자(argument)로 전달될 수 있다.
3. 다른 함수의 결과로써 리턴될 수 있다.
필터 함수는 배열의 요소가 함수를 통과 했을 때 참이면 요소를 새로운 배열에 push하고 아니면 안하는 함수이다.
let arr = [1,2,3,4,5];
let result = arr.filter(function(ele){ //[2,4]
return ele % 2 === 0;
};
맵 함수는 배열 요소가 함수를 통과할 때 리턴되는 값을 새로운 배열의 요소로 지정 하는 것이다.
let arr = [1,2,3,4,5];
let result = arr.map(function(ele){ //[2,4,6,8,10]
return ele *2;
};
리듀스 함수는 배열의 요소들이 두번 째 매개변수가 되고, 함수를 통과할 때 리턴값이 첫 번째 매개변수가 된다. 마지막 함수를 통과한 값이 리턴된다.
const arr = [1, 2, 3];
const result = arr.reduce((acc, cur, idx) => {
let newAcc = acc + cur;
return newAcc;
}, 1)
result;