반응형
문제
두개의 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>>,
]
쉽게 풀수 있었다
역시 따봉문자열아 고마워
반응형
'✍ 공부 > TypeScript' 카테고리의 다른 글
[type-challenges] EndsWith (0) | 2023.08.01 |
---|---|
[type-challenges] PickByType (0) | 2023.07.25 |
[type-challenges] Drop Char (0) | 2023.07.25 |
[type-challenges] IsNever (0) | 2023.07.04 |
[type-challenges] AnyOf< {[key:string]:never}와 {} type은 뭐가 다를까?> (0) | 2023.07.04 |