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

JavaScript 날짜 설정 방법 총정리 – setDate부터 setTime까지

JavaScript 날짜 설정 메서드란?

JavaScript에서는 Date 객체가 제공하는 다양한 setter 메서드를 활용해 날짜와 시간을 자유롭게 변경할 수 있습니다. 생성된 Date 객체의 연도, 월, 일, 시간 등을 개별적으로 수정해야 할 때 이러한 메서드들이 유용하게 사용됩니다.

주요 날짜 설정(set) 메서드 목록

메서드설명
setDate()날짜(일)를 숫자로 설정합니다.
setFullYear()연도를 설정합니다.
setHours()시간을 설정합니다.
setMilliseconds()밀리초를 설정합니다.
setMinutes()분을 설정합니다.
setMonth()월을 설정합니다. (0이 1월을 의미하므로 주의)
setSeconds()초를 설정합니다.
setTime()1970년 1월 1일 기준 밀리초 값으로 전체 시간을 설정합니다.

JavaScript 날짜 설정 예제 코드

아래 예제는 버튼을 클릭하면 여러 set 메서드를 차례로 호출하여 날짜 객체를 변경하고, 그 결과를 화면에 출력하는 코드입니다.

<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>JavaScript Set Date Methods</title>
<style>
   body {
      font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
   }
   .sample {
      font-size: 18px;
      font-weight: 500;
      color: red;
   }
</style>
</head>
<body>
<h1>JavaScript Set Date Methods</h1>
<div class="sample"></div>
<button class="Btn">CLICK HERE</button>
<h3>위 버튼을 클릭하면 날짜가 설정되고 결과가 표시됩니다.</h3>
<script>
   let sampleEle = document.querySelector(".sample");
   let date = new Date();
   document.querySelector(".Btn").addEventListener("click", () => {
      date.setHours(11);
      sampleEle.innerHTML = "setHours(11) = " + date + "<br>";
      date.setMonth(1);
      sampleEle.innerHTML += "setMonth(1) = " + date + "<br>";
      date.setMinutes(20);
      sampleEle.innerHTML += "setMinutes(20) = " + date + "<br>";
      date.setFullYear(1990);
      sampleEle.innerHTML += "setFullYear(1990) = " + date + "<br>";
   });
</script>
</body>
</html>

실행 결과

JavaScript 날짜 설정 방법 총정리 – setDate부터 setTime까지

위 코드를 실행하면 초기 화면에 빈 결과 영역과 “CLICK HERE” 버튼이 나타납니다.

버튼을 클릭하면 다음과 같이 각 메서드가 적용된 후의 날짜 값이 순서대로 출력됩니다.

JavaScript 날짜 설정 방법 총정리 – setDate부터 setTime까지

정리 및 주의사항

  • setMonth()는 0 기반 인덱스를 사용하므로, 2월로 설정하려면 setMonth(1)처럼 1을 전달해야 합니다.
  • 각 set 메서드는 호출 즉시 원본 Date 객체를 직접 수정하므로, 필요하다면 미리 복제해서 사용하는 것이 안전합니다.
  • 여러 메서드를 연속으로 호출할 경우 이전 설정값이 누적 반영되므로 호출 순서에 유의해야 합니다.