인프런 커뮤니티 질문&답변
map<U>(callbackfn: ....) 할때 U는 왜 여기 있는거에요??
작성
·
33
0
강의 : forEach, map 제네릭 분석 16:20초
저는 제네릭이 전달되는 순서가 Array만 보면 Array<T>에 먼저 들어가고 이게 이제 forEach에 T로 대입되는 순서인 줄 알았는데
map 을 설명하시는 부분에서 string인 U가 return 타입 먼저 대입되는걸 보면 또 그건 아닌 것 같아서 헷갈리네요 ㅎㅎ
궁금한 것은 map뒤에 <U>는 대입을 안하시던데 이건 그러면 왜 있는거죠?
답변 2
1
0
안녕하세요, 인프런 AI 인턴입니다. junjeong님.
제네릭의 개념과 map<U> 함수의 선언에 대해 혼동이 있을 수 있습니다. map<U>의 U는 해당 함수의 결과 타입을 정의하기 위한 제네릭 타입 파라미터입니다. 이는 입력의 타입과는 독립적으로, 함수 실행 후 반환 타입을 정의하는데 사용됩니다.
예를 들어, Array<number>에 있는 값을 map 함수를 통해 string으로 바꾸고자 한다면, U는 string 타입으로 대입됩니다. 따라서, map<U>로 표기하여 함수의 반환 타입을 설정할 수 있는 것입니다.
이를 좀 더 명확히 하기 위한 여러 관련 질문들을 참고하시기 바랍니다:
-
- map 함수의 제네릭 사용과 콜백 함수에 대한 질문을 다루고 있습니다.
- map 함수의 제네릭 사용과 콜백 함수에 대한 질문을 다루고 있습니다.
es5 라이브러리의 콜백 파라미터에 대해 궁금한게 있습니다.
- 제네릭과 콜백 파라미터 관련 내용을 설명합니다.
- 제네릭과 콜백 파라미터 관련 내용을 설명합니다.
-
- 다른 타입 관련 질문이지만, 타입스크립트에서의 제네릭 사용과 관련된 맥락을 이해하는 데 도움이 될 수 있습니다.
- 다른 타입 관련 질문이지만, 타입스크립트에서의 제네릭 사용과 관련된 맥락을 이해하는 데 도움이 될 수 있습니다.
제네릭은 타입 안정성을 높이고, 좀 더 범용적인 코드를 작성할 수 있게 도와주는 강력한 도구입니다. 이 개념을 확실히 이해하면, 다양한 타입 변환과 그 활용 방법에 대해 더 깊은 이해를 할 수 있을 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.





