Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript로 어제 날짜 구하기 – Date 객체 활용법

JavaScript에서 어제 날짜를 구하는 방법은 매우 간단합니다. 먼저 현재 날짜를 가져온 뒤, 여기서 하루를 빼주면 됩니다.

const today = new Date()
const yesterday = new Date(today)

yesterday.setDate(yesterday.getDate() - 1)

today.toDateString()
yesterday.toDateString()

코드 동작 원리

  • new Date(): 현재 날짜와 시간 정보를 담은 Date 객체를 생성합니다.
  • new Date(today): 오늘 날짜를 복사한 새로운 Date 객체를 만듭니다. 원본 객체를 그대로 유지하기 위함입니다.
  • setDate(getDate() - 1): 현재 일(day) 값에서 1을 빼 어제 날짜로 설정합니다. 월이 바뀌거나 윤년인 경우에도 자동으로 올바르게 계산됩니다.

결과 확인하기

이제 console.log()로 어제 날짜가 제대로 출력되는지 확인해 보겠습니다.

console.log(yesterday.toDateString())

toDateString() 메서드는 날짜를 사람이 읽기 쉬운 문자열 형태로 변환해 줍니다. 실행 결과는 다음과 같습니다.

// 예시 출력: Mon Jun 10 2024

응용: YYYY-MM-DD 형식으로 출력하기

날짜를 데이터베이스 저장이나 API 전송에 많이 쓰이는 ISO 형식(YYYY-MM-DD)으로 표시하고 싶다면 아래처럼 작성할 수 있습니다.

const d = new Date()
d.setDate(d.getDate() - 1)

console.log(d.toISOString().split('T')[0]) // 예: 2024-06-09

toISOString()은 UTC 기준으로 변환되기 때문에, 시간대(timezone) 차이로 인한 문제를 피하려면 로컬 시간 기준으로 직접 포맷하는 방법도 고려할 수 있습니다.

정말 간단하죠? 이 방법은 월 경계와 윤년까지 자동으로 처리해 주므로 안심하고 사용할 수 있습니다.