Node.js 날짜 변환, 요일 구하기

지수·2025년 6월 7일

Node.js

목록 보기
3/4
post-thumbnail

1. 오늘의 목표

DB에 날짜 데이터가 "2025-06-05"형식으로 저장되어있는데,
이걸 "2025.06.05 (목)" 형식으로 변환하여 반환하는 것이 목표이다.


2. 원하는 형태로 변환

  • "2025-06-05" 를 "2025.06.05"로 바꾸는 코드
const reserve_date = reserve_info.date.replace(/-/g, ".");
  • /-/g : global 플래그, 모든 "-"
  • replace(a, b) : a를 b로 변환

정규표현식과 replace 함수를 사용하여 "2025.06.05" 형태로 바꾸었다.
이것만으로도 거의 다 됐다고 볼 수있다!!


3. 요일 구하기

  • 해당 날짜의 요일을 구하는 코드
const date = new Date(reserve_info.date);
const day_list = ["(일)", "(월)", "(화)", "(수)", "(목)", "(금)", "(토)"];
  • new Date() : Date 객체를 만들어서 날짜/시간을 표현할 수 있게 해주는 함수

내 reserve_info.date는 "20205-06-05"라는 값을 가지고 있기 때문에 이걸로 Date객체를 만들면 "2025-06-05T00:00:00.000Z"으런 형태로 나온다.

getDay()를 사용할 것이기 때문에 요일을 담은 배열도 만들었다
=> 요일을 0, 1, 2, 3과 같은 숫자로 반환함 (0부터 일요일)


4. 문자 합치기

  • 원하는 형태로 바꾼 날짜와 요일을 합치는 코드
reserve_date.concat(" ", day_list[date.getDay()]);
  • 문자열1.concat(문자열2) : 문자열을 합쳐주는 함수

concat을 사용해 완성된 문자열을 합쳤다!

reserve_date + " " + day_list[date.getDay()];

concat함수를 사용하지 않고 이렇게도 할 수 있다.


5. 결과

{
    "date": "2025.06.05 (목)",
    "time": "11:00",
    "people_num": "3명"
}

원하던 대로 값이 잘 나오는 것을 알 수 있다!
이제 time도 변환해야겠다..ㅎㅎㅎ

profile
개발자 꿈나무 여고생

0개의 댓글