인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

Rona님의 프로필 이미지
Rona

작성한 질문수

[리뉴얼] 타입스크립트 올인원 : Part1. 기본 문법편

Flat type에서 ReadonlyArray 타입을 사용하는 이유?

작성

·

84

0

FlatArray 타입에서 recur 를 할때, Arr extends Array가 아닌 Arr extends ReadonlyArray 로 한 이유가 궁금합니다. 그냥, Readonly array라는것을 다른 사람에게 명시하는 정도의 사용일까요?

type FlatArray<Arr, Depth extends number> = {
  done: Arr;
  recur: Arr extends ReadonlyArray<infer InnerArr> ? FlatArray<InnerArr, [-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]>
      : Arr;
}[Depth extends -1 ? "done" : "recur"];

답변 1

0

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

ReadonlyArray가 Array보다 더 넓은 타입이라서 Arr에 ReadonlyArray까지 허용해주려는 목적입니다.

Rona님의 프로필 이미지
Rona

작성한 질문수

질문하기