Web Dev/1. JS 문법 관련

[함수형 프로그래밍] 섹션 4. map, filter, reduce

hYhY1234 2021. 1. 26. 10:20
728x90
Document 해당 Repository를 clone 하신 후, http-server ./section4 을 통해서 확인하실 수 있습니다

map

  • 어떤 함수를 각각에 적용하는 함수
  • 함수형 프로그래밍은 인자가 리턴값으로 외부세상과 소통하기를 원한다
  • map은 고차함수이기도 하다

이터러블 프로토콜을 따른 map의 다형성

  • document.querySelectorAll("*") 처럼 map 함수가 없는 이터러블도 map 할수 있게 된다
  • 제너레이터도 map 할수있게 된다
  • 즉, 이터러블이나, 제너레이터의 결과에 대해서도 map을 할 수 있게 된다

filter

  • 어떤 기준에 대해서 걸러내는 함수

reduce

  • 값을 축약해서 하나로 만드는 것
  • ex) const nums = [1,2,3,4,5]; 이런 값을 전체 다 더해서 하나의 값으로 만들기
  • const add = (a, b) => a + b; 함수가 있다고 치면
    const nums = [1, 2, 3, 4, 5]; 에 대해서
    log(add(add(add(add(add(0, 1, 1), 2), 3), 4), 5));
    를 해서 히나의 값으로 만들길 원하는 것