@modern-kit/utils
Version:
34 lines (32 loc) • 1.26 kB
TypeScript
/**
* @description 입력된 생년월일 문자열이 6자리 또는 8자리의 올바른 형식인지,
* 그리고 해당 날짜가 실제로 존재하는 날짜인지(월, 일 범위 및 윤년 고려) 검사합니다.
*
* 입력값은 아래와 같은 형식을 허용합니다:
* - 구분자 미포함: `"YYYYMMDD"`, `"YYMMDD"`
* - 구분자 포함: `"YY-MM-DD"`, `"YYYY-MM-DD"`, `"YY.MM.DD"`, `"YYYY.MM.DD"`, `"YY/MM/DD"`, `"YYYY/MM/DD"`
*
* @param {string} birthDate 생년월일 문자열
* @returns {boolean} 유효한 날짜면 true, 아니면 false
*
* @example
* isBirthDate("950913"); // true
* isBirthDate("19950913"); // true
*
* @example
* isBirthDate("95-09-13"); // true
* isBirthDate("1995-09-13"); // true
*
* isBirthDate("95.09.13"); // true
* isBirthDate("1995.09.13"); // true
*
* isBirthDate("95/09/13"); // true
* isBirthDate("1995/09/13"); // true
*
* @example
* isBirthDate("1995&09&13"); // false, '&'구분자는 불가합니다.
* isBirthDate("199-509-13"); // false, 구분자가 올바른 형식에 위치해야 합니다.
* isBirthDate("1995-9-13"); // false, 월 또는 일이 2자리여야 합니다.
*/
declare function isBirthDate(birthDate: string): boolean;
export { isBirthDate };