■ Front-End ■/JavaScript
[JavaScript] 날짜계산 및 문자열 출력
한길(One Way)
2023. 2. 28. 05:10
자바스크립트의 날짜문자열을 Date로 변환해 날짜 계산을 하고 나서 다시 문자열로 변환하여 출력하는 예제이다.
▣ js_date.html
<!DOCTYPE html5>
<html>
<head>
<title>New Document</title>
<script language="JavaScript">
// 날짜문자열을 반환
function getDate2String(targetDate)
{
var year = targetDate.getFullYear();
var month = targetDate.getMonth() + 1;
var date = targetDate.getDate();
var retval;
if (month < 10)
month = "0" + month;
if (date < 10)
date = "0" + date;
retval = "" + year + month + date;
return retval;
}
// 이전날을 반환
function getPrevDay(dateval)
{
var year = dateval.substring(0, 4);
var month = dateval.substring(4, 6);
var date = dateval.substring(6, 8);
var dt = new Date(Number(year), Number(month) - 1, Number(date));
var processTime = dt.getTime() - (1 * 24 * 60 * 60 * 1000); // 하루 이전
var newDate = new Date();
newDate.setTime(processTime);
return getDate2String(newDate);
}
// 다음날을 반환
function getNextDay(dateval)
{
var year = dateval.substring(0, 4);
var month = dateval.substring(4, 6);
var date = dateval.substring(6, 8);
var dt = new Date(Number(year), Number(month) - 1, Number(date));
var processTime = dt.getTime() + (1 * 24 * 60 * 60 * 1000); // 하루 이후
var newDate = new Date();
newDate.setTime(processTime);
return getDate2String(newDate);
}
window.onload = function()
{
var dateval = "20230228"; // 기준날짜
document.getElementById("dt_now").innerHTML = "기준날짜 = " + dateval;
document.getElementById("dt_prev").innerHTML = "하루 이전날짜 = " + getPrevDay(dateval);
document.getElementById("dt_next").innerHTML = "하루 다음날짜 = " + getNextDay(dateval);
}
</script>
</head>
<body>
<h3>
<br> <span id="dt_now"></span>
<br> <span id="dt_prev"></span>
<br> <span id="dt_next"></span>
</h3>
</body>
</html>
▣ 결과화면
2023년 2월 28일을 기준날짜로 하고 하루이전과 하루다음날을 계산한다.
728x90