티스토리 뷰

FrontEnd/JavaScript

[JavaScript] Date

JINSUKUKU 2021. 10. 24. 21:07

📌  Date 

- 날짜와 시간을 위한 속성값과 메서드를 제공하는 객체

- Date 객체는 1970년 1월 1일 UTC(협정 세계시) 자정과의 시간 차이를 밀리초로 나타내는 정수값으로 표현한다

 

 

💛  new Date( )

// default
let date_now = new Date();
let date_now_str = Date();

console.log(date_now);              // 2021-09-29T15:24:41.387Z
console.log(date_now_str);          // Thu Sep 30 2021 00:24:41 GMT+0900 (Korean Standard Time)
console.log(typeof date_now);       // object
console.log(typeof date_now_str);   // string

 

 

💛  new Date(miniseconds)

// milliseconds (1/1000)sec
let date_ms_1 = new Date(0);
let date_ms_2 = new Date(24 * 3600 * 1000);

console.log(date_ms_1); // 1970-01-01T00:00:00.000Z
console.log(date_ms_2); // 1970-01-02T00:00:00.000Z

 

 

💛  new Date(dateString)

// date string
let date_str = new Date("2020-01-01");
console.log(date_str);  // 2020-01-01T00:00:00.000Z

 

 

💛  new Date(year, month, date, hours, minutes, seconds, ms)

// year, month, ... , ms
let date_params_1 = new Date(2021, 0, 1);
let date_params_2 = new Date(Date.UTC(2021, 0, 1, 6, 12, 18, 24));
let date_params_3 = new Date(Date.UTC(2021, 0, 1));

console.log(date_params_1);     // 2020-12-31T15:00:00.000Z
console.log(date_params_2);     // 2021-01-01T06:12:18.024Z
console.log(date_params_3);     // 2021-01-01T00:00:00.000Z

 

- 1월(0) ~ 12월(11): month는 1이 아닌 0을 입력해주어야 1월이 출력된다

- new Date(2021, 0, 1) 를 사용했지만 출력 결과를 살펴보면 2020년 12월 31일, 15:00에 해당하는 결과값이 반환되었다

- 이는 우리나라가 UTC1이 아닌 UTC0을 기준 삼기때문이다

- new Date(2021, 0, 1)을 new Date(Date.UTC(2021, 0, 1))으로 수정하면 원하는 값을 얻을 수 있다

 

 

💛  date.getFullYear(), date.getMonth(), date.getDay()

let date = new Date();
console.log(date);                          // 2021-09-29T15:32:47.985Z

// year, month, day : 0(sun) ~ 6(sat)
console.log(date.getFullYear());            // 2021
console.log(date.getMonth());               // 8
console.log(date.getDay());                 // 4

 

 

💛  date.getUTCHours()

let date = new Date();
console.log(date);                          // 2021-09-29T15:32:47.985Z

// hours
console.log(date.getHours());               // 0
console.log(date.getUTCHours());            // 15

 

 

💛  date.getTime()

let date = new Date();
console.log(date);                          // 2021-09-29T15:32:47.985Z

// getTime
console.log(date.getTime());                // 1632929567985

 

 

💛  date.getTimezoneOffset()

let date = new Date();
console.log(date);                          // 2021-09-29T15:32:47.985Z

//getTimezoneOffset
console.log(date.getTimezoneOffset());      // -540

 

 

💛  date.setFullYear()

let date = new Date();

// set year
let ms_year = date.setFullYear(2020, 3, 15);
console.log(date);                  // 2020-04-14T15:40:21.647Z
console.log(new Date(ms_year));     // 2020-04-14T15:40:21.647Z

 

 

💛  date.setDate()

let date = new Date();

// set date
date.setDate(1);                  
console.log(date);                  // 2020-03-31T15:40:21.647Z
date.setDate(0);                    // 0을 넣어주면 1을 기준으로 직전 날을 표시한다 
console.log(date);                  // 2020-03-30T15:40:21.647Z

 

 

💛  date.getHours()

let date = new Date();

// set hours
date.setHours(date.getHours() + 2);
console.log(date);                  // 2020-03-30T17:40:21.647Z

 

 

💛  Date.parse()

let ms_parse = Date.parse("2020-03-31T00:00:00.000");

console.log(ms_parse);              // 1585580400000
console.log(new Date(ms_parse));    // 2020-03-30T15:00:00.000Z
console.log(new Date(Date.parse("2020-03-31T00:00:00.000Z")));    
// 2020-03-31T00:00:00.000Z;

- 그 외 날짜 정보 설정 : Date.parse(YYYY-MM-DDTHH:mm:ss.sssZ)

- 문자열 기반 날짜 정보 설정 방법

- YYYY-MM-DD → 날짜(연-월-일)

- T → 구분자

- HH:mm:ss.sss → 시:분:초.밀리초

- Z (option) → 미설정하는 경우 현재 로컬 기준 UTC로, 설정한 경우 UTC+0 기준으로 시간 설정

 

 

'FrontEnd > JavaScript' 카테고리의 다른 글

[JavaScript] Math  (0) 2021.10.19
[JavaScript] Collection-Set  (0) 2021.10.17
[JavaScript] Collection-Map  (0) 2021.10.17
[JavaScript] 생성자  (0) 2021.10.15
[JavaScript] 배열(Array)  (0) 2021.10.10
댓글
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
최근에 올라온 글
글 보관함
Total
Today
Yesterday