TIL) JavaScript 고차함수

omegle·2022년 9월 20일
0

JavaScript

목록 보기
8/8
post-thumbnail

일급 객체 = 대표적으로 함수가 있음

- 변수에 할당(assignment) 할 수 있다.

- 다른 함수의 전달인자(argument)로 전달될 수 있다.
다른 함수의 결과로서 리턴 가능

function functionParameter(func.num {
	retuirn func(num)
}

- 다른 함수의 결과로서 리턴될 수 있다.

let add = function(num1) {
	return function (num2) {
		return num 1+ num2 
	}
}

고차함수(higher order function)

= 함수를 전달인자(argument)로 받을 수 있고,
함수를 리턴할 수 있는 함수

함수가 일급객체라서 고차함수로 활용가능

콜백 함수(callback function)
= 다른 함수(caller)의 전달인자(argument)로 전달되는 함수

배열 내장 메소드

1. map

배열의 각 요소에 콜백 함수를 적용시킨 새로운 배열을 리턴

let arr = [1,2,3,4,5]

function multiply2 (num) {
	return num * 2 
}
arr.map(multiply2)

> [2,4,6,8,10]

2. filter

배열의 각 요소에 콜백 함수를 적용시켰을 때,
true 를 리턴하는 요소들만 모은 새로운 배열을 리턴

> let arr = [1,2,3,4,5]

> arr.filter(el => el % 2 === 0)
> (2) [2, 4]

3. reduce

배열의 각 요소를 콜백 함수에 맞게 하나로 응축시킨 값을 리턴

> let arr = [1,2,3,4,5]
> arr.reduce( (acc, cur) = > { 
	return acc + cur
    })
> 15

초기값을 설정하지 않으면 배열의 첫번째 요소가 acc
cur은 두번째 요소부터 시작

let arr = [1,2,3,4,5]
arr.reduce ((arr,cur) => {
	if (cur % 2 === 0) {
    return acc + cur
    } else {
    	return acc
    }
}, 0)
> 6
profile
JANG EUN JI | 장은지

0개의 댓글