-
[ Utils ] Date FormatterFront/Utils 2025. 7. 2. 21:57반응형
날짜 형식을 자유롭게 변경하기 위해 formatter 함수를 만들어서 사용
시간의 경우 Date, String, number 타입 모두가 가능하지만
통일성을 위해서 timestamp만 처리하도록 고려
나중에 타입에 따라서 date 변수의 날짜만 잘 처리하면 사용가능
format 파라미터로 원하는 형식을 입력받고 기본 format형태는 YYYY-MM-DD 형태로 사용
나중에는 전달받은 format의 값을 replace를 활용하여 각각 알맞은 값으로 바꿔준다.
나중에 상황에 따라서 YYYY - YYYY 형태도 고려해서 정규식으로 같은 값은 모두 바꿔주는 방식으로 구현
export function formatDateLocale(timestamp: number, format = 'YYYY-MM-DD') { const date = new Date(timestamp) const map: Record<string, string> = { YYYY: String(date.getFullYear()), MM: String(date.getMonth() + 1).padStart(2, '0'), DD: String(date.getDate()).padStart(2, '0'), HH: String(date.getHours()).padStart(2, '0'), mm: String(date.getMinutes()).padStart(2, '0'), ss: String(date.getSeconds()).padStart(2, '0'), } Object.entries(map).forEach(([token, value]) => { format = format.replace(new RegExp(token, 'g'), value) }) return format }
날짜 format방식은 여러가지 해보았지만 이게 제일 깔끔하고 편한것
728x90반응형'Front > Utils' 카테고리의 다른 글
[ Utils ] Unit Conversion (1) 2025.07.29 [ Utils ] Random Id (0) 2025.07.02