[Javascript] 자바스크립트 날짜 시간 자료형(Date)
날짜 시간 자료형
- 객체(object 형)
- Date 클래스 제공
현재시간
var now = new Date();
- 자바의 Calendar.getInstance();와 같음.
- Date 객체가 생성되는 날짜정보를 가지게 됨.
console.log(now); Sat Apr 06 2019 13:53:05 GMT+0900 (한국 표준시)
//c.get(Calendar.YEAR)
console.log(now.getYear()); 119 2자리 년도(2000년도 이전, 2000년도 119 이런식으로 년도 2000년 이전을 0으로 보고 이후를 1부터 시작.)
console.log(now.getFullYear()); 2019 4자리 년도
console.log(now.getMonth()); 3 월(0~11) : 그래서 월은 정확히 표현하기 위해서는 +1을 해줘야함.
console.log(now.getDate()); 6 일
console.log(now.getDay()); 6 요일(일[0]~토[6])
console.log(now.getHours()); 13 시
console.log(now.getMinutes()); 53 분
console.log(now.getSeconds()); 5 초
console.log(now.getMilliseconds()); 472 밀리초(1/1000);
console.log(now.getTime()); 1554526385472 유닉스타임/1000 초
유닉스타임이란?
1970년 1월 1일 0시 0분 0초부터 현재까지를 초로 환산한 정수값을 유닉스 타임이라 합니다.
출력해보기
그냥 출력
console.log(now); Sat Apr 06 2019 13:53:05 GMT+0900 (한국 표준시)
console.log(now.toString()); Sat Apr 06 2019 13:53:05 GMT+0900 (한국 표준시) ->내부데이터 덤프
형식출력
console.log(now.toDateString()); Sat Apr 06 2019
console.log(now.toTimeString()); 13:53:05 GMT+0900 (한국 표준시)
로케일 형식 출력
console.log(now.toLocaleString());//toString(); 2019. 4. 6. 오후 1:53:05
console.log(now.toLocaleDateString()); 2019. 4. 6.
console.log(now.toLocaleTimeString()); 오후 1:53:05
특정 시각 생성하기
- 크리스마스
var christmas = new Date(2019,11,25,11,30,40);
console.log(christmas.toLocaleString()); 2019. 12. 25. 오전 11:30:40
연산
console.log(christmas - now); 크리스마스까지 남은 값 22713145141
console.log(christmas.getTime() - now.getTime()); 22713145141
-> getTime() 함수는 Date 객체의 함수로 해당 Date 객체의 유닉스타임의 밀리초를 반환한다.
console.log((christmas - now)/1000/60/60/24); 262.8836243171296 결과적으로 남은 일수는 다음과 같다.
-> 유닉스밀리초을 1000으로 나누면 유닉스타임(초)이 됨 -> 60을 나누면 분으로 반환됨 -> 다시 60으로 나누면 시간 -> 24로 나누면 일로 반환된다.
오늘 커플 -> 100일 뒤?
var day = new Date();
day.setTime(now.getTime()+(100*24*60*60*1000)); 100일에 해당하는 유닉스 밀리초타임을 현재 날짜데이터에서 더한후 day 변수에 setTime한다.
console.log(day.toLocaleString()); 현재날짜 : 2019. 4. 6. 100일뒤는? -> 2019. 7. 15.