문자열에 지정 형식 생성하기

Tags
type
설명
YYYY-MM-DD 형식에 대한 타입 생성 예시 ${number}px 타입 생성 예시 - TS 4.1부터 쉽게 정의 가능!

참고자료

 

날짜 관련 타입 생성

// 날짜 관련 타입 export type D = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0; export type YYYY = `19${D}${D}` | `20${D}${D}`; export type YY = `${D}${D}`; export type OneToNine = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9; export type MM = `0${OneToNine}` | `1${0 | 1 | 2}`; export type DD = `${0}${OneToNine}` | `${1 | 2}${D}` | `3${0 | 1}`; // ------------
 

YYMMDD 타입 생성

export type YYMMDD = `${Y}${Y}${M}${M}${D}${D}`; // YYMMDD export type DateYMString = `${YYYY}-${MM}`; // YYYY-MM export type DateYMDString = `${DateYMString}-${DD}`; // YYYY-MM-DD
 

`${number}Px` 타입 생성

export type PixelType = `${number}px`; export type ScalePxType = PixelType | (() => PixelType) const test:ScalePxType = '1px'; // 올바른 타입 const test2:ScalePxType = '1pxa'; // 잘못된 타입 (빨간줄 뜸) const test3:ScalePxType = ()=>'1px'; // 올바른 타입 const test4:ScalePxType = ()=>'1pxa'; // 잘못된 타입 (빨간줄 뜸)