묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결자바스크립트로 알아보는 함수형 프로그래밍 (ES5)
_curryR 을 적용한 _map 혹은 _filter함수 질문입니다!!
curryR을 활용해 등록한 map 함수나 _filter함수 동작에 const mapR = _curryR(_map); console.log( mapR(v => v.name)(arr) ));은 작동하는데 반해 console.log( mapR(v => v.name, arr));은 작동하지 않습니다...저는 조금 이해가 안가는게 arguments.length ===2 로 파라미터가 2개 들어올때의 경우의 수 까지 처리 한것으로 알고 있는데 왜 밑에 부분은 작동하지 않는지...맞게 동작하는 것인지 궁금합니다....만약 제가 놓치고 있는 부분이 있다면 알려주시면 감사드리겠습니다!
-
미해결자바스크립트로 알아보는 함수형 프로그래밍 (ES5)
_reduce 질문 있습니다!
_reduce 함수에서 파라미터로 받은 list 를 list = _rest(list)를 통해 변경 하는데요... 이 부분에서 순수 함수가 맞는지 맞다면 이유가 무엇인지 궁금한데 알려 주실 수 있을까요??
-
미해결자바스크립트로 알아보는 함수형 프로그래밍 (ES5)
순수함수에 대해서 질문있습니다.
안녕하세요 유인동님! 순수함수 관련 질문이 있습니다. <질문1> ```js const addMaker = (a) => { // (*) return (b) => { // ....add return a + b; } } ``` 위 코드의 (*) 부분에서 인자 a를 변경하고 있지 않기 때문에 add이 순수함수라고 하셨는데, (*)에서 a를 변경하지만 이후 add 함수가 호출되는 상황에서는 변경되지 않는다는 것이 보장되어도 순수하지 않을걸까요?? 가령 다음과 같은 경우에 순수함수를 리턴한다고 보기 어려운 것인지 궁금합니다. ```js const addMakerInMod3 = (a) => { a %= 3; return (b) => { // ....add return a + b; } } ``` <질문2> 모듈 코드 상에 변수를 선언하고 함수 안에서 이를 참조해도 이 변수를 변경하지 않는다는게 보장되면 순수함수라고 부를 수 있을까요? ```js // module.js const a = 10; const add10 = (b) => a +b; ```