인프런 커뮤니티 질문&답변

전환오님의 프로필 이미지

작성한 질문수

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

map+filter+reduce 중첩 사용과 함수형 사고

Object 프로토타입에 등록해서 쓰면 불이익이 있을까요?

해결된 질문

작성

·

239

0

Object.prototype.map = function (f) {
  const result = [];
  for (const el of this) result.push(f(el));
  return result;
};

제 생각에 이런 식으로 정의를 하면 

기존의 Array.prototype.map메서드 처럼 체이닝해서 사용할 수 있을 것 같다고 생각을 했어요.

가독성 측면에서 더 나아지지 않을까 생각을 했습니다.

이렇게 사용했을 때 불리한 점이 있을까 궁금해서 질문드려봅니다.  

답변 3

1

유인동님의 프로필 이미지
유인동
지식공유자

안녕하세요 :)

메서드는 값으로 사용할 수 없다는 단점이 있고 다형성을 지원하는 부분에 있어서도 아쉬운점이 조금 있습니다. 

함수는 함수만으로도 함수의 인자로 사용하기 용이합니다. 

감사합니다. :)

0

전환오님의 프로필 이미지
전환오
질문자

아 다음 섹션에서 바로 왜 함수로 써야하는지 배우네요. 좋은 강의로 많이 배웁니다 감사합니다

0

전환오님의 프로필 이미지
전환오
질문자

답변으로 좀 더 배웠습니다

답변 감사합니다!