이 글을 읽기전에 프로그래밍 패러다임에 대한 이해를 먼저 하자.코드가 계산되어 값을 만드는 것을 말한다.값으로 다룰 수 있는 것을 말한다. 함수를 값으로 다룬다면 아래와 같이 사용될 수 있다.변수에 담을 수 있다.함수의 인자로 사용될 수 있다.함수의 결과로 사용될 수
고차함수 map, filter, reduce에 대해 정리하는 포스팅입니다.map()은 배열 각 요소에 대하여 주어진 함수를 수행한 결과를 모아 새로운 배열을 반환하는 메서드이다.3개의 매개변수를 가진다.value : 현재 요소index : 요소의 인덱스array : m
직접 정의한 map, filter, reduce 코드를 값으로 다루어 전체적인 코드의 표현력을 높일 수 있다.이를 위해 주로 사용하는 함수들인 go, pipe, curry 함수를 구현하여 보자.go 함수는 인자를 받아 결과를 바로 산출해내는 함수이다.첫번째 인자는 시작
숫자를 받아 그 크기만큼의 배열을 반환하는 함수L.range에서는 배열이 바로 반환되는게 아닌 Iterator가 반환된 것을 확인할 수 있습니다.일반 range함수는 함수 호출시점에 이미 배열로 평가가 되서 list에 대입되었지만, 느긋한 L.range는 함수 호출시점
콜백 함수 ?함수의 인자값으로 함수를 받아 해당 함수에 인자값을 전달하면서 로직을 수행하는 방법이라 할 수 있습니다.Promise ?callback과 가장 큰 차이점중 하나는 Promise객체를 반환한다는 것입니다.return 당시에는 Promise타입 객체를 반환하며
함수형 프로그래밍 시리즈 내용으로 계속 이어서 내용이 진행되므로 처음 부터 포스팅을 확인해주세요.이터러블 프로그래밍은 리스트 프로세싱으로도 불리며 목록 형식의 (이터러블, 리스트.. 등) 데이터를 처리하는 프로그래밍을 말한다.이번 포스팅에서 여러 예제들을 통하여 이터러
함수형 프로그래밍 시리즈 내용으로 계속 이어서 내용이 진행되므로 처음 부터 포스팅을 확인해주세요.코드에서 첫 번째 console.log를 보면 total과 u.age라는 서로 다른 형태를 통해 합산을 하는 것을 알 수 있는데, reduce에서 서로 합산 할 때는 서로
함수형 프로그래밍 시리즈 내용으로 계속 이어서 내용이 진행되므로 처음 부터 포스팅을 확인해주세요.다음과 같은 합성함수를 선언했다.위와 같이 함수를 선언했을 때, 아래와 같이 인자값 없이 값을 실행하면 'NaN'으로 에러가 난다.잘못된 값이 들어왔을때, 아무 동작도 하지
함수형 프로그래밍 시리즈 내용으로 계속 이어서 내용이 진행되므로 처음 부터 포스팅을 확인해주세요.객체 역시 이터러블 프로그래밍을 통해 지연성, 동시성 등 이터러블 프로그래밍의 장점을 가져갈 수 있으며 그 방법에 대하여 알아보자.먼저 위코드의 values 값들을 콘솔을
함수형 프로그래밍 시리즈 내용으로 계속 이어서 내용이 진행되므로 처음 부터 포스팅을 확인해주세요.함수형 프로그래밍이 대체하고자 하는 것은 특정 패러다임이 아니라 언어 자체를 대체한다는 것을 중점적으로 생각해야 한다. 그렇기에 명령형으로 짜여진 코드의 틀(ex: 클래스)