55,000원
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결함수형 프로그래밍과 JavaScript ES6+
안녕하세요. 초깃값이 전달되지 않을경우, 처리하는 로직이 이해가 어려워 질문드립니다!
const reduce(f, acc, iter) { if (!iter) { iter = acc[Symbol.iteator](); // 이 부분에서 acc 이터러블을 복사하지 않고, 왜 이터러블에서 변환된 이터레이터의 값을 복사하는 지 궁금합니다! } ... // (아래 부분의 코드 생략) };
- 미해결함수형 프로그래밍과 JavaScript ES6+
타입스크립트 코드
전체적으로 타입스크립트 코드는 혹시 올려주실 생각 없나요? 흠.. 뭔가 타입스크립트로 하려고 하니까 좀 어려워요
- 미해결함수형 프로그래밍과 JavaScript ES6+
(res.push(a),res).length;
(res.push(a),res).length; 이부분은 어떻게 평가되는건가요..?? 같은 질문하신분의 답변을 봐도 이해가 안됩니다 ㅠ.
- 미해결함수형 프로그래밍과 JavaScript ES6+
이거 reduce 타입스크립트로 어덯게 작성하나요?
후.. generic이랑, overload 써서 해보려고 하는데 잘안되네요. 아래처럼 arrow function으로 하려니까, reduce 함수에서 타입을 지정해달라고 하는데, 이건 아닌거 같고.. type ReduceCallback<T> = (acc: T, cur: T)=>Ttype Reduce<T> = { (fn: ReduceCallback<T>, acc: T, iter: Iterable<T>) : T, (fn: ReduceCallback<T>, iter: Iterable<T>) : T} const reduce: Reduce<T> = (fn, acc, iter) => { if(iter === undefined) { iter = acc[Symbol.iterator](); acc = iter.next(); } for(const a of iter) { acc = fn(acc, a); }} 아래 처럼 function 스타일로 overload 하려고 하는데, acc[Symbo.iterator](); 여기서 에러가 나고요. function reduce<T>(fn: ReduceCallback<T>, iter: Iterable<T>): T;function reduce<T>(fn: ReduceCallback<T>, acc: T, iter: Iterable<T>):T{ if(!iter) { iter = acc[Symbol.iterator](); acc = iter.next(); } for(const a of iter) { acc = fn(acc, a); } return acc;} 추가적으로 fn: ReduceCallback<T>, acc: T | Iterable<T>, iter? : Iterable<T> overload 맨 아래 작성해봐도 안되는데 이거 어떻게 하나요?????????
- 미해결함수형 프로그래밍과 JavaScript ES6+
공부 방향성 질문
안녕하세요 프론트엔드로 취업을 준비중인 취준생입니다. 질문사항은 다음과같습니다. 1. 강의의 최종목적이 go,pipe,curry등의 재사용성이 높은 함수를 직접 구현해서 사용하는것을 목표로해야하는지, 단순히 작동원리를 파악하는것을 목표로 두어야하는지가 궁금합니다. 어떻게든 강의내용을 돌려보면서 어떻게 동작하는지, 사용함으로써 얻게되는 이점에대해선 알 수 있을거같은데 프로젝트에서 이러한 함수들을 직접 구현할 수 있을지가의문이듭니다. 2. 이후 강의인 응용편을 바로 듣는것을 추천하는지, 아니면 우선 지금 듣는 이 강의를 다듣고 지금까지배웠던 여러 함수들을 작은프로젝트에 적용해보면서 익숙해진후에 응용편을 듣는것을 추천하시는지 궁금합니다.(강의는 이미 구매한 상태입니다.)
- 해결됨함수형 프로그래밍과 JavaScript ES6+
infinity
`for(const i of infinity(1)) log(i)`를 하게되면 무한히 값이 생성되서 브라우저가 멈춰버리는데요. odds안에 저렇게 무한히 생성되는 아이를 for문에 조건문으로 적어주었을때 이미 값은 내부적으로 다 만들어져있는 상태인가요?
- 미해결함수형 프로그래밍과 JavaScript ES6+
4분57초 쯤에
const res = await map(async a=> await delayI(a*a),list); 4분 57초쯤에 바로 return을 해주기떄문에 async, await이 지운다는 말이 이해가 안되어 질문드립니다! 혹시 이유가 go1함수에서 delayI(a*a)가 then으로 풀려서 그런가요?
- 미해결함수형 프로그래밍과 JavaScript ES6+
applicative programming
응용형 프로그래밍 설명에서 궁금한게 있습니다. 예를 들어 const times = (fun) => return fun(10); function을 인자로 받아서 원하는 인수를 넘겨주는 것이 응용형 프로그래밍이라고 이해를 했는데 간단한게 이렇게 프로그래밍한것도 응용형 프로그래밍으로 취급하는건가요 ?
- 미해결함수형 프로그래밍과 JavaScript ES6+
일급에 대한 질문
안녕하세요. 일급에 관한 질문이 있습니다. javascript에서 원시 자료형인 null, undefined, 숫자, 문자, bigint, boolean, symbol도 모든 곳에서 값으로 활용이 되는데 일급으로 취급되는 것일까요?
- 미해결함수형 프로그래밍과 JavaScript ES6+
fxjs 에 보면 강의에서 유용하게 사용하고 추천하신 get 함수가 보이지 않는데 이유가 있으실까요? 궁금합니다.
fxjs 에 보면 강의에서 유용하게 사용하고 추천하신 get 함수가 보이지 않는데 이유가 있으실까요? 궁금합니다.
- 미해결함수형 프로그래밍과 JavaScript ES6+
reduceF함수 내부에서
a instanceof Promise ? a.then(a=> f(acc,a), e=> e == nop ? acc : Promise.reject(e)) reduceF함수 내부에서 e => e== nop이라면 acc를 반환하기로 되어있는데, 쉼표를 하고 e가 nop과 같은지 검사하는 이유는 앞에 a=>f(acc,a)가 실패했을 때 호출이 되고 이것이 nop인지 아니면 함수 전체를 reject하려고하는 건지를 확인하려는 의미인 것인가요? 그리고 위의 코드에서 nop은 Lfilter로 부터 전달된 게 맞나요?
- 미해결함수형 프로그래밍과 JavaScript ES6+
질문)있습니다^^
log( [[1, 2], [3, 4], [5, 6, 7], 8, 9].flatMap((a) => a.map((a) => a * a)) ) map이 함수가 아니라고 나오는데 왜 그런지 궁금합니다.
- 미해결함수형 프로그래밍과 JavaScript ES6+
함수형에서만 map 사용을 해야하나요?
안녕하세요 강사님 map 함수를 보다가 궁금한점이 있는데요 map, reduce, filter등 함수는 함수형 프로그래밍에서, for, while 같은 것들은 oop 에서 사용해야하는 것으로 알고있는데 oop에서 map이나 filter사용해도 상관없을까요? 둘이 굳이 구분지어서 사용해야하는지 생각이 들어서요
- 미해결함수형 프로그래밍과 JavaScript ES6+
go와 pipe를 사용하는 이유가..
가독성을 높이고 각종 함수를 한번에 묶어서 사용할 수 있기 때문에 사용하는건가요?
- 미해결함수형 프로그래밍과 JavaScript ES6+
실무에서도 사용이 빈번하게 일어나는 코드들일까요?
성능상의 이점을 이야기 해주시니, 배열을 만들고 순회하는 기존 range보다 L.range의 효율이 더 높은 것 같다는 생각을 했습니다. 실무에서도 큰 크기의 배열을 돌때 해당 range, reducer를 구현해서 사용하시나요? 아니면 rxjs같은 곳에서 비슷한 패러다임의 메서드를 제공하는걸 가져와 사용하는걸까요? 영상 뒷부분까지 봐야 실무에 어떻게 적용시킬 수 있을지 감이 오려나요?
- 미해결함수형 프로그래밍과 JavaScript ES6+
product부분 정리! 맞나요?
(reduce, filter, map에 전부 curry 적용) go (reduce (a, f)=>f(a), args) 1. 처음 reduce에 a와 filter를 인자로 받는다. 2. 하지만 filter에 인자가 하나 밖에 없으므로 한번 기다렸다가 a를 받은 뒤 실행 3. filter의 결과를 acc 값으로 저장한 뒤 두번째 시도에서 a값으로 적용 4. reduce두번째 시도에서는 filter결과(a)와 map을 인자로 받는다. 5. map의 인자가 하나이므로 기다렸다가 a를 받고 나서 실행 6. map의 결과값을 acc로 저장했다가 다음 번 a로 적용 7. reduce 세번째 시도에서는 map결과(a)와 reduce를 인자로 받아 실행 8. 마찬가지로 reduce의 인자가 하나이므로 기다렸다가 a값이 전해지면 실행 9. reduce의 결과를 acc값에 저장했다가 다음 차례 a로 적용 10. reduce 네번째 시도에서는 reduce결과(a)와 log를 인자로 받은 뒤 실행 계속 뒤로가서 그 전 강의들을 다시봤네요 ㅎㅎ 제가 이해한 내용이 맞나요?
- 미해결함수형 프로그래밍과 JavaScript ES6+
질문드립니다!
6분 쯤에 테스트로 콘솔 찍어보시는 부분에서 a => (console.log(a), a), 로 작성하셨을때 a가 리턴이 되는데 이건 무슨 기능이고 어디에서 확인할 수 있을까요?
- 미해결함수형 프로그래밍과 JavaScript ES6+
질문) 질문 있습니다^^
(사진)
- 미해결함수형 프로그래밍과 JavaScript ES6+
go에서 사용하는 reduce 함수가 어떻게 동작되는지 이해가 되지않습니다.
const reduce = (f, acc, iter) => { // iter에 값이 없으면 두번째 인자인 acc를 iterable로 변환 // acc는 iter의 첫번째 값인 0으로 if (!iter) { iter = acc[Symbol.iterator](); acc = iter.next().value; } // iter에서 next를 한번 하였기 때문에 (a) => a + 1, 부터 들어감. for (const a of iter) { acc = f(acc, a); // acc = ?(0, a => a + 1) { ? } } return acc; }; const go = (...args) => reduce((a, f) => f(a), args); go( 0, (a) => a + 1, (a) => a + 10, (a) => a + 100 ); reduce에서 f로 인자로 넘겨준 함수가 reduce 함수내에서 어떤식으로 동작하는지를 모르겠습니다. 이거가지고 2일동안 막히고 있네요 ㅠㅠ
- 미해결함수형 프로그래밍과 JavaScript ES6+
fxjs 와 fxjs2 의 차이가 있나요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. fxjs 와 fxjs2 의 차이가 있나요?