106 - Trim Left
- #Type Challenges
- #TypeScript
질문
정확한 문자열 타입이고 시작 부분의 공백이 제거된 새 문자열을 반환하는 TrimLeft<T>를 구현하십시오.
예시
type trimmed = TrimLeft<' Hello World '> // 기대되는 결과는 'Hello World '입니다.
// !collapse(1:15) collapsed
// 테스트 케이스
import type { Equal, Expect } from '@type-challenges/utils'
type cases = [
Expect<Equal<TrimLeft<'str'>, 'str'>>,
Expect<Equal<TrimLeft<' str'>, 'str'>>,
Expect<Equal<TrimLeft<' str'>, 'str'>>,
Expect<Equal<TrimLeft<' str '>, 'str '>>,
Expect<Equal<TrimLeft<' \n\t foo bar '>, 'foo bar '>>,
Expect<Equal<TrimLeft<''>, ''>>,
Expect<Equal<TrimLeft<' \n\t'>, ''>>,
]선행 지식
- 템플릿 리터럴 타입 역시
infer를 통해 타입을 분해 가능하다.