본문 바로가기
개발기록/자바스크립트 & jQuery

Javascript Date() 객체, Date 함수 종류 [자바스크립트 도장깨기]

by 쎄정 2022. 4. 27.
728x90
반응형

Date 객체 선언

const Today = new Date(); // 현재 날짜 시간 구하기
const test = new Date(today.getFullYear(), today.getMonth(), 0); // 마지막 날 출력 
const test = new Date(today.getFullYear(), today.getMonth(), 1); // 첫 번째 날 출력

const setDateTime1 = new Date(2022,12,31,6,30); // 2022-12-31 06:30:00로 날짜 설정
const setDateTime2 = new Date('2022-12-31 06:30:25'); // 2022-12-31 06:30:25

 

메서드

get() / set(), 값을 반환한다 / 값을 입력한다.

get 메소드 set 메소드 설명
getDate() setDate() 날짜를 출력
getFullYear() setFullYear() 년도
getMonth() setMonth()
getDay() setDay() 요일을 출력
getTime() setTime() 1970/1/1 기준 경과한 시간
getHour() setHour() 시간
getMinutes() setMinutes()
getSecond() setSecond()
getMilliseconds() setMillsecons() 밀리초

 

실습하는 법
1. Chrome 실행
2. Ctrl + Shift + i 동시 눌러 개발자 창 열기
3. Console 창 실행
4. 예저 복사 붙여넣기 하여 결과값 확인

 

getDate()

- 현재 날짜를 출력한다.

const today = new Date();
document.writeln(today);

//Wed Apr 27 2022 09:23:22 GMT+0900 (한국 표준시)

 

getFullYear()

- 기준 날짜의 년도를 추출한다.

const today = new Date();
console.log(today.getFullYear());

// today : Wed Apr 27 2022 09:23:22 GMT+0900 (한국 표준시)
// 2022

 

getMonth()

- 기준 날짜의 달을 추출한다.

1월을 0으로 표기하여, 현재 달의 정보를 얻기 위해선 getMonth() + 1를 꼭 해야한다.

const today = new Date();
console.log(today.getMonth()); // 3, 1월이 0부터 표기되어 4월이지만 3으로 표기
console.log(today.getMonth()+1); //  4

// today : Wed Apr 27 2022 09:23:22 GMT+0900 (한국 표준시)

 

getDay()

- 기준 날짜의 요일을 추출한다.

월요일 1
화요일 2
수요일 3
목요일 4
금요일 5
토요일 6
일요일 7
const today = new Date();
console.log(today.getDay()); // 3 

// today : Wed Apr 27 2022 09:23:22 GMT+0900 (한국 표준시)

 

 

활용 예제

// 현재 날짜 구하기
const today = new Date();
document.writeln(today);

// 현재 시간 구하기
const now = new Date()
const hour = now.getHour();
const minutes = now.getMinutes();
const seconds = now.getSeconds();
document.writeln(hour + ':' + minutess + ':' + seconds);

//toLocal String, DateString, Timestring, DateString 활용
let today = new Date();   

document.write(today.toLocaleDateString() + '<br>');
document.write(today.toLocaleTimeString() + '<br>');
document.write(today.toLocaleString() + '<br><br>');
// YY/MM/DD hh:mm:ss 형태의 문자로 지정한다

document.write(today.toLocaleDateString('en-US'));

 

두 날짜사이 일수 구하기

function call(){
  let StartDay = document.getElementById("startDay").value; //'2019-10-01'
  let EndDay = document.getElementById("endDay").value; //'2022-03-04'

  let strArr = StartDay.split('-');
  let endArr = EndDay.split('-');
  let day = new Date(strArr[0], strArr[1], strArr[2]);  
  let day2 = new Date(endArr[0], endArr[1], endArr[2]);

  let differ = day2 - day;

  let calYear = calMonth*12;
  let calMonth = calDay * 30;
  let calDay = 24*60*60*1000;
  
  if(strArr && endArr){
    document.getElementById('years').value = parseInt(differ/calYear);
    document.getElementById('months').value = parseInt(differ/calMonth);
    document.getElementById('days').value = parseInt(differ/calDay);
  }
}
728x90
반응형

댓글