MitNy.log

About

[Javascript] 날짜(월,일) 01~31 포맷으로 출력하기

가끔씩 날짜 데이터가 필요할 때 Date() 메소드를 쓰곤한다.
Date 값을 변수에 저장해두면 getFullYear(), getMonth(), getDate(), getHours() 등으로 년,월,일 데이터를 간단하게 가져올 수 있다.
그런데 제공해주는 데이터는 Month인 경우 0~11, Date인의 경우 1~31의 값을 반환해준다.

사용해야하는 값은 01~12, 01~31 인데 앞에 0을 어떻게 붙여야될지 난감하다!
그럴땐 다음과 같은 코드를 사용하면 된다 :)

var today = new Date();
var year = today.getFullYear();
var month = today.getMonth()+1;
var day = today.getDate();

var format = year+"-"+(("00"+month.toString()).slice(-2))+"-"+(("00"+day.toString()).slice(-2));

getMonth()의 경우 0~11을 반환해주므로 1을 더해줘야 원하는 값을 얻을 수 있다.

0이 붙는 월,일 값은 앞에 "00" 문자열을 붙여서 001, 0031 이런 형태로 만들어준다.
그 후에 slice를 이용해 문자열의 뒤 2글자만 가져오면 01, 31이 되는 것이다.

format 변수를 출력하면 게시 날짜 기준 2019-07-09이 나온다.