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

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

지혜님의 프로필 이미지
지혜

작성한 질문수

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

filter 타입 직접 만들기

custom filter 메서드 구현부분에 궁금점이 생겨 질문드립니다

작성

·

170

0

 

interface customArray<T>{
  filter<S extends T>(callback:(v:T, index: number, array:T[]) => v is S): S[]
}

const sample1: customArray<string> = ["1", "2"]

const value = sample1.filter((value, index): value is string =>  Number(value) > 1)

강의에서 구현하신 custom filter는 custom type guard로 별도 리턴 분기처리를 하지않았는데 어떻게 true 케이스들만 필터링 할수 있는지 궁금합니다.

저의 개인적인 생각은 callback의 반환값으로 value is string 를 반환하는데 위의 케이스를 바탕으로 value는 string 형식이기 때문에 true가 됩니다

때문에 callback 메서드 수행시 false 반환값은 무시되고 true 반환값들만 리턴된다라고 추측이되는데 이 추측이 맞는지 궁금합니다

답변 1

0

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

질문이 잘 이해가 안 되는데요. 배열의 filter 메서드는 원래 true 리턴값들만 필터링되는 겁니다. 타입과 전혀 관련없습니다.

지혜님의 프로필 이미지
지혜

작성한 질문수

질문하기