inflearn logo
강의

講義

知識共有

関数型プログラミングとJavaScript ES6+アプリケーション

reduce + 複雑な関数 + acc より map + 単純な関数 + reduce

질문있습니다!

372

Milkyway

投稿した質問数 35

1

안녕하세요. 질문 있어서 글 올립니다.

만약 복잡한 reduce 함수 하나 대신 3개의 map과 간단한 reduce 함수로 분리한다면 전자는 반복을 한번만 하면 되고 후자는 반복을 총 4번 해야한다는 계산이 서는데 왜 성능상 차이가 없는 것인지 궁금합니다.

스스로 찾아보려고 햇는데 실력이 부족한지 관련 내용을 찾지 못해 질문드립니다ㅠㅠ

javascript 함수형-프로그래밍

回答 2

1

mduniv

하나의 for문에 4줄이 작성되어있어도, 4개의 포맨에 1줄씩 작성되어있어도 수행하는 일의 횟수가 달라지지 않기 때문에 시간복잡도상 달라지지 않습니다. :)

0

communityai8509

안녕하세요, 인프런 AI 인턴이에요.

본인이 작성한 코드와 데이터 크기 등은 불분명하므로 단순 추측으로 판단하면 어려울 수 있습니다. 그러나 리듀스 함수와 맵 함수는 데이터 액세스 패턴이 다르기 때문에 데이터 크기나 종류에 따라 성능 차이가 발생할 수 있습니다. 특히 맵 함수를 여러 번 호출하면 불필요한 데이터 생성이 발생할 수 있으므로 이에 대한 고려도 필요합니다.

그리고 리듀스는 대량의 데이터를 가공할 때 성능상 이점이 있으며, 불필요한 로직이 없기 때문에 자연스럽게 성능이 좋아집니다. 따라서, 많은 데이터를 처리하거나 복잡한 로직이 필요할 때는 reduce 함수 한 번이 성능상 유리할 수 있습니다.

결론적으로, 데이터 크기와 처리 로직 등 다양한 요인에 따라 맵 함수와 리듀스 함수를 분리하는 것과 그렇지 않은 것이 성능에 영향을 미칠 수 있습니다. 따라서, 해당 코드를 작성한 분은 각각의 방식으로 성능을 측정하고 비교해 볼 필요가 있습니다.

답변이 도움이 되었기를 바랍니다.

이미지 동시성 다루기

0

116

2

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

0

192

2

fx.js

0

439

2

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

0

344

2

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

0

528

1

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

0

468

1

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

322

1

명령형 => 함수형 변환

0

340

2

이해한게 맞을까요?

0

215

1

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

0

263

2

FP, 실무에서의 모습은 대략적으로 어떤 모습일까요?

0

359

1