inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

함수형 프로그래밍과 JavaScript ES6+ 응용편

queryToObject

reduce 관련 질문드립니다.

325

조성륜

작성한 질문수 4

0

명령형을 함수형으로 바꾸는 과정 중에 질문드립니다.

reduce 내부 함수를 간단하게 해보고 싶은데 if 문은 filter 를 통해서 해결이 가능할것 같은데, 여러가지 케이스에 관해서는 어떻게 해야하는지 감이 안오네요. 예시 코드 첨부합니다.

const arr = [1, 2, 3, 4, 5, 6]



console.log(

  _.reduce((a, b) => {

    if(b % 2 == 0) return a + b * 2

    else if(b % 3 == 0) return a + b * 3

    else if(b % 5 == 0) return a + b * 5

    else return b

  },arr)

)

함수형-프로그래밍 javascript

답변 3

2

조성륜

항상 좋은 강의감사합니다.

2

MDU 유인동

안녕하세요. 예제를 위한 예제를 만들다보면 오히려 실무에 나오지 않는 코드가 나오는 경우가 좀 있는거 같아요.

그래도 좀 고쳐서 보여드려보면 (마지막 return b가 a + b 였을거라고 예상하고?)


const arr = [1, 2, 3, 4, 5, 6];

console.log(
_.reduce((a, b) => a + b,
_.map(a =>
a % 2 == 0 ? a * 2 :
a % 3 == 0 ? a * 3 :
a % 5 == 0 ? a * 5 : a, arr)));

이런식일거 같으네요. 

이 코드가 뭐가 더 좋아진거냐 라고 생각하실 수 있는데요.

_.reduce(add) 라는 재사용 가능한 함수로 분리된점이 좋아진점이라고 볼 수 있습니다.

감사합니다.

0

조성륜

else 문 에서 return 하는 값은 a 입니다.

이미지 동시성 다루기

0

116

2

클로저와 같은 함수형 프로그래밍 공부

0

192

2

fx.js

0

440

2

fxjs 라이브러리 takeL 관련하여 질문드립니다.

0

344

2

[ 비동기 상황에서의 Lazy, Strict 기법이 혼합된 평가 ] 에 대한 이해

0

528

1

input값이 이터러블 함에도 range를 쓴 이유가 궁금합니다.

0

468

1

질문있습니다!

1

372

2

DB Insert관련

0

657

2

강의에 대한 제언

2

599

1

DOM 조작 관련 질문입니다.

0

408

1

L.map, L.filter

0

613

1

indexBy 함수에 대한질문입니다.

0

404

2

해당 강의를 듣고 나면

0

397

1

내용없음

0

236

1

함수 추출에 대한 고민

1

286

1

뷰 포트에 보이는 엘리먼트만 이미지 로드하고 싶을 때

1

327

1

기존에 반복문이 1개 돌던거를 이렇게하면 2번 도는데...

0

242

1

array in object... 는 어떤 식으로 재귀가 가능할까요..?

0

271

1

queryToObject 질문드립니다.

0

359

1

재귀는 어떻게 표현할 수 있을까요?

0

315

1

모든 명령형 => 함수형 가능한가요?

0

323

1

명령형 => 함수형 변환

0

341

2

이해한게 맞을까요?

0

216

1

iter의 개별 elements 에 data 를 삽입 또는 변형해서 삽입하는 경우엔 map 으로 제어를 하는게 맞을까요?

0

263

2