Math
는 생성자 함수가 아니다.
표준 빌트인 객체인 Math
정적 프로퍼티와 정적 메소드만 제공한다.
Date
는 빌트인 객체이면서 동시에 생성자 함수다.
UTC(협정 세계시)를 기점으로 시간을 나타낸다. 단위는 ms
밀리초이다.
Date
생성자 함수로 생성한 Date
객체는 내부적으로 날짜와 시간을 나타내는 정수값을 가지게 된다.
이 값은 1970년 1월 1일 00:00:00(UTC)을 기점으로 밀리초를 나타낸다.
new Date()
인자 없이 호출하면 현재 날짜와 현재 시간을 가지는 Date
객체를 반환한다.
만약 new
연산자 없이 호출하면 객체가 아닌 날짜와 시간 정보를 나타내는 문자열을 반환한다.
new Date(milliseconds)
밀리초를 인자로 전달하면 1970년 1월 1일 00:00:00(UTC)를 기점으로 해당 밀리초가 경과한 날짜와 시간을 나타내는 Date
객체를 반환한다.
new Date(dateString)
날짜와 시간을 나타내는 문자열을 전달해 Date
객체를 생성할 수도 있다.
이때 전달한 문자열은 Date.parse()
메서드에 의해 해석 가능한 형식이어야 한다.
new Date(year, month[, day, hour, minute, second, millisecond])
Date
생성자 함수에 연, 월, 시, … 를 인수로 전달해 지정된 날짜와 시간을 나타내는 Date
객체를 반환할 수 있다.
이때 연, 월은 반드시 지정해야 하며 month
는 0 부터 11까지임에 주의하자. (0 = 1월, 1 = 2월, …)
new Date(2024, 7, 13, 10, 00, 00, 0);
new Date('2024/8/13/10:00:00:00');
Date.now()
1970년 1월 1일 00:00:00(UTC)을 기점으로 현재 시간까지 경과한 밀리초를 반환한다.
Date.parse(dateString)
1970년 1월 1일 00:00:00(UTC)을 기점으로 인수로 전달된 지정 시간까지의 밀리초를 숫자로 반환한다.
Date.UTC(year, month[, day, hour, minute, second, millisecond])
1970년 1월 1일 00:00:00(UTC)을 기점으로 인수로 전달된 지정 시간까지의 밀리초를 숫자로 반환한다.
Date.prototype.getTimezoneOffset()
UTC와 Date 객체에 지정된 locale 시간과의 차이를 분 단위로 반환한다.
const now = new Date(); // now의 지정 로케일은 KST이다.
now.getTimezoneOffset() // -540
Date.prototype.toDateString()
사람이 읽을 수 있는 형식의 문자열로 Date 객체의 날짜를 반환한다.
const now = new Date('2024/8/13/10:00');
now.toString() // → Tue Aug 13 2024 10:00:00 GMT+0900 (대한민국 표준시)
now.toDateString()// → Tue Aug 13 2024
Date.prototype.toTimeString()
사람이 읽을 수 있는 형식의 문자열로 Date 객체의 시간을 표현한 문자열을 반환한다.
const now = new Date('2024/8/13/10:00');
now.toString() // → Tue Aug 13 2024 10:00:00 GMT+0900 (대한민국 표준시)
now.toTimeString()// → 10:00:00 GMT+0900 (대한민국 표준시)
Date.prototype.toISOString()
ISO 8601 형식으로 날짜와 시간을 표현한 문자열을 반환한다.
const now = new Date('2024/8/13/10:00');
now.toString() // → Tue Aug 13 2024 10:00:00 GMT+0900 (대한민국 표준시)
now.toISOString()// → 2024-08-13T01:00:00.000Z