[typescript] 날짜 형식의 유효성 검사 방법
날짜 형식의 유효성을 검사하기 위해 TypeScript에서 어떤 방법을 사용하는지 알아보겠습니다.
1. 정규식을 사용한 유효성 검사
JavaScript/TypeScript에서는 정규식을 사용하여 문자열이 특정한 형식에 맞는지 확인할 수 있습니다. 날짜 형식의 정규식은 다음과 같습니다.
const dateRegex: RegExp = /^\d{4}-\d{2}-\d{2}$/;
const dateString: string = '2022-01-31';
if (dateRegex.test(dateString)) {
console.log('유효한 날짜 형식입니다.');
} else {
console.log('유효하지 않은 날짜 형식입니다.');
}
위의 예제에서 dateString
은 ‘YYYY-MM-DD’ 형식이어야 합니다.
2. 라이브러리를 활용한 유효성 검사
Moment.js나 date-fns 등의 라이브러리를 사용하여 날짜 형식의 유효성을 검사할 수 있습니다. 이러한 라이브러리를 사용하면 좀 더 강력한 유효성 검사와 다양한 날짜 조작 기능을 사용할 수 있습니다.
import { isValid, parseISO } from 'date-fns';
const dateString: string = '2022-01-31';
if (isValid(parseISO(dateString))) {
console.log('유효한 날짜 형식입니다.');
} else {
console.log('유효하지 않은 날짜 형식입니다.');
}
위의 예제에서는 date-fns
라이브러리를 사용하여 날짜 형식을 검사하고 있습니다.
3. TypeScript의 유효성 검사 도우미 라이브러리 활용
TypeScript에서는 io-ts
나 class-validator
와 같은 유효성 검사 도우미 라이브러리를 사용하여 복잡한 유효성 검사를 수행할 수 있습니다. 이러한 라이브러리를 사용하면 정적 타입 검사와 함께 날짜 형식의 유효성을 검사할 수 있습니다.
import { validate, string, date } from 'io-ts';
const DateType = date;
const dateString: string = '2022-01-31';
const result = validate(dateString, DateType);
if (result._tag === 'Right') {
console.log('유효한 날짜 형식입니다.');
} else {
console.log('유효하지 않은 날짜 형식입니다.');
}
위의 예제에서는 io-ts
라이브러리를 사용하여 날짜 형식의 유효성을 검사하고 있습니다.
이러한 방법들을 사용하여 TypeScript에서 날짜 형식의 유효성을 검사할 수 있습니다. 선택한 방법은 프로젝트의 요구 사항과 선호도에 따라 다를 수 있습니다.