JS 현재 날짜 구하기

김원종·2023년 8월 28일
0

var days = ['SUN', 'MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT'];
var months = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'];

function updateTime() {
    var now = new Date();
    var year = now.getFullYear().toString().slice(-2); //연도 마지막 두 자리 가져오기
    var month = months[now.getMonth()]; //자바스크립트에서 월은 0번째부터 인덱스 됩니다.
    var day = now.getDate().toString().padStart(2, "0"); // 필요한 경우 선행 0을 추가합니다.
    var hours = now.getHours().toString().padStart(2, "0"); // 필요한 경우 선행 0을 추가합니다.
    var minutes = now.getMinutes().toString().padStart(2, "0"); //필요한 경우 선행 0을 추가합니다.
    var seconds = now.getSeconds().toString().padStart(2, "0"); // 필요한 경우 선행 0을 추가합니다.

    // 요일을 가져와 대문자로 변환합니다.
    // getDay 메서드는 숫자를 반환합니다(월요일은 1, 일요일은 7),
    // 이 숫자를 사용하여 요일 배열의 색인을 생성합니다.

    var dayOfWeek = days[now.getDay()];
    $("#headerNam_TimePoint").text(`${year}.${month}.${day}${hours}:${minutes}:${seconds} ( ${dayOfWeek} )`);
}

// 일정한 간격으로 updateTime을 호출하여 시간 표시를 최신 상태로 유지합니다.
setInterval(updateTime, 1000);  // 매초 업데이트
요

function updateTime() {: 이 부분은 updateTime이라는 함수를 정의하는 시작 부분입니다.
var now = new Date();: JavaScript에서 Date 객체를 생성합니다. 이 객체는 현재 날짜와 시간 정보를 포함하고 있습니다.
var year = now.getFullYear().toString().slice(-2);: 현재 연도를 가져오고(getFullYear()), 문자열로 변환한 후(toString()), 마지막 두 자리만 잘라내어(slice(-2)) 변수 year에 저장합니다.
var month = months[now.getMonth()];: 현재 월을 가져옵니다(getMonth()). JavaScript에서 월은 0(1월)부터 11(12월)까지의 숫자로 표현되므로, months 배열에서 해당 인덱스의 월을 찾아 변수 month에 저장합니다.
var day = now.getDate().toString().padStart(2, "0");: 현재 일자를 가져오고(getDate()), 문자열로 변환한 후, 두 자리가 될 때까지 앞쪽에 '0'을 추가합니다(padStart(2, "0")). 예를 들어, 일자가 9일이면 '09'가 됩니다.
6-8번째 줄: 시간, 분, 초도 비슷한 방식으로 처리됩니다.

9-10번째 줄: 요일 정보를 가져옵니다 (getDay()). getDay 메서드는 숫자 (일요일은 0부터 토요일은 6까지) 를 반환하므로 days 배열에서 해당 요일 이름을 찾습니다.

11번째 줄: HTML 문서 중 id가 'headerNam_TimePoint'인 요소의 내용을 우리가 만든 날짜 및 시간 문자열로 변경합니다 ($("#headerNam_TimePoint").text(...)).

마지막으로 이 함수(updateTime)는 setInterval 메서드에 의해 매 초마다 호출되어 화면상의 시계가 실시간으로 업데이트됩니다.


var dayOfWeek = days[now.getDay()]; 이 코드는 현재 요일을 가져와서 그에 해당하는 요일 이름을 dayOfWeek 변수에 저장합니다.

JavaScript의 Date.prototype.getDay() 메서드는 주어진 날짜의 요일을 숫자로 반환합니다. 일요일은 0, 월요일은 1, 화요일은 2, ..., 토요일은 6으로 반환됩니다.

따라서 now.getDay()는 현재 날짜의 요일에 해당하는 숫자를 반환하게 됩니다.

그리고 days 배열에서 이 숫자를 인덱스로 사용하여 해당하는 요일 이름을 찾습니다. 예를 들어, 만약 오늘이 월요일이라면 now.getDay()는 1을 반환하고, days[1]은 'MON'이 됩니다. 따라서 dayOfWeek 변수에는 'MON'이 저장되게 됩니다.

profile
개린이

0개의 댓글