JavaScript Date Objects
JavaScript Date Object를 사용하면 날짜 작업을 할 수 있습니다.
기본적으로 JavaScript는 브라우저의 시간대를 사용하고 날짜를 전체 텍스트 문자열로 표시합니다.
<!DOCTYPE html> <html> <body> <h2>JavaScript new Date()</h2> <p id="demo"></p> <script> var d = new Date(); document.getElementById("demo").innerHTML = d; </script> </body> </html>
Date 오브젝트는 new Date()
생성자(constructor)로 생성됩니다.
새 날짜 오브젝트(date object)를 만드는 방법에는 4 가지가 있습니다.
new Date() new Date(year, month, day, hours, minutes, seconds, milliseconds) new Date(date string)
new Date()
는 현재 날짜와 시간으로 새 날짜 오브젝트를 만듭니다.
var d = new Date();
Date 오브젝트는 정적(static)입니다. 컴퓨터 시간은 똑딱거리지만 date objects는 그렇지 않습니다.
new Date(year, month, ...)
는 지정된 날짜와 시간으로 새 date 오브젝트를 만듭니다.
7 개의 숫자는 년(year), 월(month), 일(day), 시(hour), 분(minute), 초(second) 및 밀리 초(millisecond)를 순서대로 지정합니다:
<!DOCTYPE html> <html> <body> <h2>JavaScript new Date()</h2> <p>Using new Date(7 numbers), creates a new date object with the specified date and time.</p> <p id="demo"></p> <script> var d = new Date(2018, 11, 24, 10, 33, 30, 0); document.getElementById("demo").innerHTML = d; </script> </body> </html>
Note:
JavaScript는 달을 0에서 11까지로 계산합니다.
1월은 0이고, 12월은 11입니다.
6개의 숫자는 년(year), 월(month), 일(day), 시(hour), 분(minute), 초(second)를 지정합니다.
var d = new Date(2018, 11, 24, 10, 33, 30) // Mon Dec 24 2018 10:33:30 GMT+0900 (대한민국 표준시)
5개의 숫자는 년(year), 월(month), 일(day), 시(hour), 분(minute)을 지정합니다.
var d = new Date(2018, 11, 24, 10, 33); // Mon Dec 24 2018 10:33:00 GMT+0900 (대한민국 표준시)
4개의 숫자는 년(year), 월(month), 일(day), 시(hour)를 지정합니다.
var d = new Date(2018, 11, 24, 10); // Mon Dec 24 2018 10:00:00 GMT+0900 (대한민국 표준시)
3개의 숫자는 년(year), 월(month), 일(day)을 지정합니다.
var d = new Date(2018, 11, 24); // Mon Dec 24 2018 00:00:00 GMT+0900 (대한민국 표준시)
2개의 숫자는 년(year), 월(month)을 지정합니다.
var d = new Date(2018, 11); // Sat Dec 01 2018 00:00:00 GMT+0900 (대한민국 표준시)
월(month)은 생략할 수 없습니다. 매개 변수를 하나만 제공하면 밀리 초로 처리됩니다.
var d = new Date(2018); // Thu Jan 01 1970 09:00:02 GMT+0900 (대한민국 표준시)
한 자리 및 두 자리 연도는 19xx로 해석됩니다.
var d = new Date(99, 11, 24) // Fri Dec 24 1999 00:00:00 GMT+0900 (대한민국 표준시)
var d = new Date(09, 11, 24) // Fri Dec 24 1909 00:00:00 GMT+0830 (대한민국 표준시)
new Date(dateString)
는 date string에서 새 날짜 오브젝트를 만듭니다.
var d = new Date("October 13, 2014 11:13:00"); // Mon Oct 13 2014 11:13:00 GMT+0900 (대한민국 표준시)
JavaScript는 1970 년 1 월 1 일, 00:00:00 UTC (Universal Time Coordinated) 이후 날짜를 밀리 초 단위로 저장합니다.
제로 타임(Zero time)은 1970 년 1 월 1 일 00:00:00 UTC입니다.
현재 시간은 1970 년 1 월 1 일 이후 1618269610417 밀리 초입니다.
new Date(milliseconds)
는 제로 타임에 밀리 초를 더한 새 날짜 객체를 만듭니다:
var d = new Date(0); // Thu Jan 01 1970 09:00:00 GMT+0900 (대한민국 표준시)
1970 년 1 월 1 일 + 100 000 000 000 밀리 초는 대략 1973 년 3 월 3 일입니다:
var d = new Date(100000000000); // Sat Mar 03 1973 18:46:40 GMT+0900 (대한민국 표준시)
1970 년 1 월 1 일에서 100,000000000 밀리 초를 뺀 값은 대략 1966 년 10 월 31 일입니다.
var d = new Date(-100000000000); // Mon Oct 31 1966 23:13:20 GMT+0900 (대한민국 표준시)
var d = new Date(86400000); // Fri Jan 02 1970 09:00:00 GMT+0900 (대한민국 표준시)
하루 (24시간)sms 86,400,000 밀리 초입니다.
Date 오브젝트가 생성되면, 여러 메서드를 사용하여 작업할 수 있습니다.
Date 메서드를 사용하면 현지 시간 또는 UTC (범용 또는 GMT) 시간을 사용하여
date 오브젝트의 년, 월, 일, 시, 분, 초 및 밀리 초를 가져오고 설정할 수 있습니다.
JavaScript는 (기본적으로) 전체 텍스트 문자열 형식으로 날짜를 출력합니다.
Tue Apr 13 2021 10:12:34 GMT+0900 (대한민국 표준시)
HTML로 date 오브젝트를 표시하면, toString()
메서드를 사용하여 자동으로 문자열로 변환됩니다.
d = new Date(); document.getElementById("demo").innerHTML = d;
d = new Date(); document.getElementById("demo").innerHTML = d.toString();
toUTCString()
메소드는 날짜를 UTC 문자열 (날짜 표시 표준)로 변환합니다.
var d = new Date(); document.getElementById("demo").innerHTML = d.toUTCString(); // Tue, 13 Apr 2021 01:23:20 GMT
toDateString()
메서드는 날짜를 더 읽기 쉬운 형식으로 변환합니다.
var d = new Date(); documenet.getElementById("demo").innerHTML = d.toUTCString(); // Tue, 13 Apr 2021 01:23:20 GMT
toISOString()
메서드는 ISO 표준 형식을 사용하여 날짜를 문자열로 변환합니다.
var d = new Date(); document.getElementById("demo").innerHTML = d.toISOString(); // 2021-04-13T01:29:51.993Z