✍ 공부/TypeScript

[type-challenges] StartsWith

Po_tta_tt0 2023. 7. 25. 20:25
반응형

문제

두개의 string type T,U를 받고, 만약 T의 시작에 U가 있는지를 반환하는 StarsWith<T,U>를 구현하세요.

설명


/* _____________ Your Code Here _____________ */

type StartsWith<T extends string, U extends string> = T extends `${U}${infer B}`
? true
:false


/* _____________ Test Cases _____________ */
import type { Equal, Expect } from '@type-challenges/utils'

type cases = [
  Expect<Equal<StartsWith<'abc', 'ac'>, false>>,
  Expect<Equal<StartsWith<'abc', 'ab'>, true>>,
  Expect<Equal<StartsWith<'abc', 'abc'>, true>>,
  Expect<Equal<StartsWith<'abc', 'abcd'>, false>>,
  Expect<Equal<StartsWith<'abc', ''>, true>>,
  Expect<Equal<StartsWith<'abc', ' '>, false>>,
  Expect<Equal<StartsWith<'', ''>, true>>,
]

쉽게 풀수 있었다
역시 따봉문자열아 고마워

반응형