inflearn logo
강의

Course

Instructor

Functional Programming and JavaScript ES6+

join function more polymorphic than Array.prototype.join

강의 중 혼란스러운 부분이 생겨 질문 드립니다.

Resolved

543

Milkyway

35 asked

0

안녕하세요 강의 중 혼란스러운 부분이 생겨 질문 드립니다.

const queryStr2 = pipe(
  Object.entries,
  L.map(([k, v]) => `${k}=${v}`),
  function(a) {
    log(a)
    return a;
  },
  join('&'),
)

위 코드에서 Object.entries는 Lazy하게 구현한 것이 아니라 빌트인 객체의 메서드를 사용했다고 이해 했는데 L.map으로 인해 a값이 Object [Generator] {} 인걸 이해 못했습니다.

 

Object.entries가 이터레이션 프로토콜을 따르는 이터레이터라는 것까진 이해 했는데 내부적으로 제너레이터로 구현이 돼 있는 걸까요?? 값을 yield로 리턴하도록 구현돼 있는 것인지 궁금합니다.

 

아니면 Object.entries는 이미 평가 된 상태에서 L.map 부분만 지연 평가가 돼 Generator가 된 걸까요?

javascript 함수형-프로그래밍

Answer 2

3

Milkyway

강의 중간에 질문 드렸는데 L.entries까지 듣고 Object.entries까지는 완전히 평가 된 후 L.map부터 지연 평가 되도록 구현했기 때문에 지연평가 된다 로 이해했는데 맞을까요?

감사합니다. 강의 너무 재밌습니다!

1

mduniv

네 맞습니다 :)

프론트엔드 실무에서 어떤때에 쓰이는지 궁금합니다

1

111

1

함수형 프로그래밍 심화 강의 자료 추천

0

72

2

함수형 자바스크립트 프로그래밍 책

0

52

1

filter가 아무것도 걸러내지 못하는 경우

0

111

1

take 함수의 성능적면에서의 이점

1

463

1

pipe함수

1

530

1

Identity 함수

0

450

1

함수형 프로그래밍이란

0

831

1

reduce 예제 코드 제안!

0

403

1

fxts를 배워보려고 합니다.

1

537

1

flatMap 관련 질문드립니다~

1

444

1

다용성이 높은 L.flatMap

0

357

1

변수에 재 할당 금지~

0

540

1

DevTools라고 옆에 결과 확인하는거 어떻게 하나요?

0

482

2

소요시간에 관해서 질문드립니다

1

457

1

join에 대한 내용이 궁금증이 해결되지 않아서 질문드립니다!

0

465

2

reduce에 L.range를 사용할 때

0

526

2

[이해내용 공유] Lazy 에서 C.reduce가 병렬 효과를 내는 이유

3

738

2

제가 이해한 C.Reduce와 Reduce의 동작 차이 정리

2

787

3

go, pipe 함수 관련하여 질문 드립니다.

1

497

1

안녕하세요 강사님!

0

377

2

fxts에 go가 없는 이유?

0

837

1

비동기 관련 질문입니다!

0

457

1

질문 있습니다.

0

514

1