자바스크립트에서 현재 날짜 및 시간을 구하기 위해서는 Date 객체를 사용하면 된다. Date 객체를 사용하여 현재의 날짜를 출력하면 YYYY-MM-DD와 같은 형식의 날짜 포맷으로 출력되지 않기 때문에, Date 객체에서 제공하는 추출 함수를 사용하여 날짜 포맷을 변환하는 작업이 추가적으로 필요하다.
현재 날짜, 시간 구하기
var today = new Date();
console.log(today);
// 결과 : Sun May 30 2021 15:47:29 GMT+0900 (대한민국 표준시)
// 결과 : Sun May 30 2021 15:47:29 GMT+0900 (대한민국 표준시)
Date 객체를 사용하여 현재 시스템의 날짜를 가져와서 출력하면, 평상시에 사용하는 날짜 포맷(YYYY-MM-DD HH:MM:SS)로 출력되지 않기 때문에 아래의 추출 함수를 사용하여 날짜 포맷을 변환해야 한다.
날짜 포맷 변경하기 (YYYY-MM-DD)
var today = new Date();
var year = today.getFullYear();
var month = ('0' + (today.getMonth() + 1)).slice(-2);
var day = ('0' + today.getDate()).slice(-2);
var dateString = year + '-' + month + '-' + day;
console.log(dateString);
// 결과 : 2021-05-30
// 결과 : 2021-05-30
날짜 추출 함수를 사용할때 주의해야 할 점은 getMonth() 함수인데, getMonth() 함수는 0~11을 반환하기 때문에 항상 +1을 해줘야한다. 그리고 getMonth(), getDate() 함수는 수치 값을 반환하기 때문에 2자리를 맞추기 위해서는 "0"을 붙여서 뒤에서 2자리만 잘라서 값을 변환해야 한다.
시간 포맷 변경하기 (HH:MM:SS)
var today = new Date();
var hours = ('0' + today.getHours()).slice(-2);
var minutes = ('0' + today.getMinutes()).slice(-2);
var seconds = ('0' + today.getSeconds()).slice(-2);
var timeString = hours + ':' + minutes + ':' + seconds;
console.log(timeString);
// 결과 : 15:47:29
// 결과 : 15:47:29
시간 포맷 변환 또한 날짜와 비슷하며, getHours(), getMinutes(), getSeconds() 함수도 수치 값을 반환하기 때문에 2자리를 맞추기 위해서는 "0"을 붙여서 뒤에서 2자리를 잘라줘야 한다.