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

an hw님의 프로필 이미지
an hw

작성한 질문수

타입스크립트 입문 - 기초부터 실전까지

제네릭의 타입 제한

string을 넘겼을때 length를 배열로만 체크해야 하나요?

작성

·

345

1

안녕하세요~

예를들어 간단히 아래처럼 작성해도 length가 체크 가능한데요.

var str = 'sdf';
console.log(str.length); // 3

'hi'라는 문자의 type을 array로 넘겨서 다시 forEach로 체크해야하는 방법밖에 없는지 문의드립니다~

그리고 T가 아래처럼 LogTextLength2를 <string>으로 표시해 주었는데 length를 인식하지 못합니다~
이것도 T가 어떤 타입인지 명시되지 않은 상태로 봐야 할까요?

function logTextLength2<T>(text: T): T {
  text.length;
  console.log(text.length);
  return text;
}
logTextLength2<string>('hi');

답변 1

0

안녕하세요 답변 드릴게요.

1. string으로 선언된 타입도 말씀하신 것처럼 length 접근이 가능합니다. array로 타입을 넘기신다는 의미가 어떤건지 잘 모르겠네요..!

2. logTextLength2의 함수에서 제네릭의 타입을 제한해 주셔야 length 접근이 가능합니다. 강의 내용 다시 한번 확인해 보세요 :)

an hw님의 프로필 이미지
an hw

작성한 질문수

질문하기