javascript Date() 객체를 활용해 라이브러리 없이 내가 원하는 dateformat을 해놓을 것이다.
기존에 쓰던 방식으로는
var date = new Date();
//객체 선언 후
var year = date.getFullYear();
var mon = date.getMonth()+1;
var day = date.getDate();
var today = year + "-" + (mon<10 ? "0"+mon : mon) + "-" + (day<10 ? "0"+day : day);
이렇게 많이 쓰고 지금도 많이 쓰고 있을 것이다.
물론 뒤에 나오는 fn이 특별한건 없고 위에 쓰인 기본기를 메서드화 시켜서 중복성과 편이성을 늘렸다고 볼 수 있다.
function dateFormat(date, sep) { //date format 메서드
var d = new Date(date),
month = '' + (d.getMonth() + 1),
day = '' + d.getDate(),
year = d.getFullYear();
if (month.length < 2) month = '0' + month;
if (day.length < 2) day = '0' + day;
return [year, month, day].join(sep);
}
위와같이 fn을 만들어놓고 내가 년월일 사이에 넣을 문자를 sep 에 넣어주면 끝이다.
var today = dateFormat(new Date(), "/") // today = '2020/12/03'
이렇게 간단하게 사용이 가능하다.
복붙해서 공통js 에 넣어놓고 가져다 쓰면 그만이다.
시간도 뒤에 붙이고 싶다면 아래의 내용을 참조하면 된다.
function formatDateTime(date, by) {
var d = new Date(date),
month = '' + (d.getMonth() + 1),
day = '' + d.getDate(),
year = d.getFullYear(),
hour = d.getHours().toString(),
minute = d.getMinutes().toString(),
sec = d.getSeconds().toString;
if (month.length < 2) month = '0' + month;
if (day.length < 2) day = '0' + day;
if (hour.length < 2) hour = '0' + hour;
if (minute.length < 2) minute = '0' + minute;
if (minute.length < 2) minute = '0' + minute;
if (sec.length < 2) sec= '0' + sec;
return [year, month, day].join(by) + " " + hour + ":" + minute +":"+ sec;
}
'Programming > Javascript' 카테고리의 다른 글
[Javascript] 쌍따옴표("), 홑따옴표('), 억음 부호(`) 부호 차이 (0) | 2022.12.16 |
---|