Skip to content

고차 함수

배열을 변환하는 고차 내장 함수입니다. 함수를 인자로 받아 배열의 각 요소에 적용합니다.

매핑(배열, 함수)

배열의 각 요소에 함수를 적용하여 새 배열을 반환합니다.

hik
함수 두배(정수 x) -> 정수:
    리턴 x * 2

출력(매핑([1, 2, 3], 두배))    // [2, 4, 6]

활용 예제

hik
함수 제곱(정수 x) -> 정수:
    리턴 x * x

출력(매핑([1, 2, 3, 4, 5], 제곱))    // [1, 4, 9, 16, 25]

걸러내기(배열, 함수)

조건 함수가 true를 반환하는 요소만 포함하는 새 배열을 반환합니다.

hik
함수 양수(정수 x) -> 논리:
    리턴 x > 0

출력(걸러내기([1, -2, 3, -4, 5], 양수))    // [1, 3, 5]

활용 예제

hik
함수 짝수(정수 x) -> 논리:
    리턴 x % 2 == 0

출력(걸러내기([1, 2, 3, 4, 5, 6], 짝수))    // [2, 4, 6]

줄이기(배열, 함수, 초기값)

배열의 요소를 왼쪽에서 오른쪽으로 함수를 적용하여 하나의 값으로 축약합니다.

hik
함수 합(정수 a, 정수 b) -> 정수:
    리턴 a + b

출력(줄이기([1, 2, 3, 4, 5], 합, 0))    // 15

활용 예제

hik
함수 곱(정수 a, 정수 b) -> 정수:
    리턴 a * b

출력(줄이기([1, 2, 3, 4, 5], 곱, 1))    // 120 (팩토리얼)

조합 패턴

고차 함수를 체이닝하여 강력한 데이터 변환을 수행합니다:

hik
함수 양수(정수 x) -> 논리:
    리턴 x > 0

함수 제곱(정수 x) -> 정수:
    리턴 x * x

함수 합(정수 a, 정수 b) -> 정수:
    리턴 a + b

배열 데이터 = [-3, -1, 0, 2, 5]

// 양수만 걸러내고 -> 제곱하고 -> 합산
정수 결과 = 줄이기(매핑(걸러내기(데이터, 양수), 제곱), 합, 0)
출력(결과)    // 29 (4 + 25)

Released under the MIT License.