반응형
250x250
«   2025/01   »
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
Notice
Recent Posts
Today
Total
관리 메뉴

네이처리 노트

[javascript] 날짜, new Date(), timestamp, date 형변환과 사칙연산 본문

개발기록/Javascript

[javascript] 날짜, new Date(), timestamp, date 형변환과 사칙연산

네이처리 2022. 9. 6. 14:54
728x90
반응형

공부하면서 정리한 내용입니다
참고한 내용은 맨 아래의 링크를 확인해주세요



new Date()

let myDate = new Date();
console.log(myDate);
//생성순간의 요일 월 일 년도 시간 시간대 출력

let myDate = new Date(1000);
//new Date(숫자);
//출력: 1970년 1월 1일 00:00:00 UTC + 1000밀리초(1초)

let myDate = new Date('2020-09-01');
//new Date('문자');
//new Date('YYYY-MM-DD');
//시간은 자동으로 자정을 기준으로 함

let myDate = new Date('2020-09-01T18:01:10');
//new Date('YYYY-MM-DDThh:mm:ss')

let myDate = new Date(2020, 9);
//new Date(year, month, date, hours, minutes, seconds, ms)
//month의 경우 0부터 시작!
//출력: Mon Oct 01 2020 00:00:00 GMT+0900 (대한민국 표준시)
console.log(myDate.getFullYear());
console.log(myDate.getMonth());  //0부터 시작 (+1되어 출력 주의)
console.log(myDate.getDate());   //일자
console.log(myDate.getDay());    //요일(0 ~ 6)
console.log(myDate.getHours());
console.log(myDate.getMinutes());
console.log(myDate.getSeconds());
console.log(myDate.getMilliseconds());
myDate.setFullYear(year, [month], [date])
myDate.setMonth(month, [date])
myDate.setDate(date)
myDate.setHours(hour, [min], [sec], [ms])
myDate.setMinutes(min, [sec], [ms])
myDate.setSeconds(sec, [ms])
myDate.setMilliseconds(ms)
myDate.setTime(milliseconds) // 1970년 1월 1일 00:00:00 UTC부터

▲ set메서드로 생성된 Date객체의 정보를 수정할 수도 있습니다. (대괄호는 옵션)

let myDate = new Date(2017, 4, 18, 19, 11, 16);

myDate.setFullYear(2002);
myDate.setMonth(6);
myDate.setDate(20);
let myDate = new Date(1988, 0, 32); 
// 1988년 1월 32일은 없습니다

console.log(myDate) 
// Mon Feb 01 1988 00:00:00
// 2월 1일로 자동고침 되는걸 확인할 수 있습니다.

▲범위를 벗어나는 값을 설정하려고 하면 자동으로 날짜를 수정해줍니다.

타임 스탬프 timestamp

//date객체가 [1970년 1월 1일 00:00:00 UTC]에서 얼마나 지났는지 !!!
let myDate = new Date();
console.log(myDate.getTime());

//현시점의 날짜 값을 객체없이 얻을 수 있음
console.log(Date.now());

//설정한 날짜에서 지금 생성한 날짜까지 차이 !!!
let christmas = new Date('2020-12-25');
let today = new Date();
let timeDiff = christmas.getTime() - today.getTime();

Date 형변환

let myDate = new Date(2017, 4, 18);

console.log(typeof myDate); // object
console.log(String(myDate)); // Thu May 18 2017 00:00:00 GMT+0900 (Korean Standard Time)
console.log(Number(myDate)); // 1495033200000
console.log(Boolean(myDate)); // true

Number로 변환할 경우, 이 값은 아무 의미없는 단순한 숫자값이 아니라 getTime() 메소드를 활용한 것과 똑같은 수치의 타임스탬프 값 입니다.

Date 사칙연산

let myDate1 = new Date(2017, 4, 18);
let myDate2 = new Date(2017, 4, 19);

let timeDiff = myDate2 - myDate1;
console.log(timeDiff); // 86400000 (ms)
console.log(timeDiff / 1000); // 86400 (sec)
console.log(timeDiff / 1000 / 60) // 1440 (min)
console.log(timeDiff / 1000 / 60 / 60) // 24 (hour)
console.log(timeDiff / 1000 / 60 / 60 / 24) // 1 (date)









Reference

1) 날짜와 시간을 위한 Date 객체

Date | PoiemaWeb

Date 객체는 날짜와 시간을 위한 메소드를 제공하는 built-in 객체이다. 내부적으로 Date 객체는 숫자값을 갖는다. 이 값은 1970년 1월 1일 00:00(UTC)을 기점으로 현재 시간까지의 밀리초를 나타낸다.

poiemaweb.com

2) Date객체

자바스크립트 - javascript에서 날짜와 요일, 시간 나타내는 방법

유닉스시간으로 표현 Date 객체 JS에서 내장된 Date 객체(object)는 특정 지점(나라나 주 단위 처럼)에...

blog.naver.com

728x90
반응형
Comments