개발공부_Blog/JavaScript

javascript _ Date() 밀리초를 날짜로 변환하기

소팡팡 2022. 1. 18. 16:38

Date()

 

자바스크립트 Date 객체는 날짜 정보를 밀리 세컨드 단위로 저장합니다. 

1970년 1월 1일이 기준 시점이 되며,

입력된 날짜값과의 차이가 Date 객체의 값입니다.

 

Date 객체 생성

자바스크립트의 내장 객체인 Date로 객체를 만들면, 빈 객체가 아닌 현재 시간 정보가 객체 안에 자동 삽입됩니다.

코드를 실행해서 웹페이지를 새로고침 해보면 초단위 데이터가 계속 갱신되는 것을 확인해 볼 수 있습니다.

let 객체명 = new Date();

 

 

Date() 생성자의 인수

Date 생성자는 괄호 안의 인수가 들어갑니다. 년도, 월, 일, 시간, 분, 초, 밀리 세컨드 단위까지 작성될 수 있습니다.

let 객체명 = new Date(year, monthIndex, day, hours, minutes, seconds, milliseconds);

 

Date 객체의 메서드 :  get~ 

Date 객체의 메서드는 지정된 날짜 데이터를 조작, 조회하는 함수입니다.

이 메서드는 Date.prototype.메서드 형식으로 지정되어 있습니다.

프로토타입이므로 Date 내장 객체 사용시 메서드명만 가져오면 사용할 수 있습니다.

 

 

https://thdud4479.tistory.com/136?category=1027558 

 

Date객체 1 - 연도, 월, 일, 요일

요일을 만들어봄 function today(){ const date = new Date() const year = date.getFullYear() const month = date.getMonth()+1 const day = date.getDate() titleDay.textContent = (`${month}월 ${day}일` )..

thdud4479.tistory.com

 

 

 

 

D-Day 계산에 필요한 getTime() 메서드

getTime() 메서드를 사용하면, D-Day와 같은 목표 시험 대비 남은 날짜 등의 잔여 기간을 계산할 수 있습니다.

 

항해를 하면서 풀어본 문제입니다

항해를 시작한 날자를 인수로받으면 98일 뒤 끝나는 날짜를 알려주는 예제입니다

function solution(month, day){
    let result = ''
    let 항해시작 = new Date(`2021,${month},${day}`)
    let 항해끝 = ''

  항해끝 = (항해시작.getTime()) + (1000 * 60 * 60 * 24 * 98 )
  // console.log(항해끝)

  let dday = new Date(항해끝)
  let M = dday.getMonth()+1
  let D = dday.getDate()

  return result = `${M}월 ${D}일`

}
console.log(solution(1,18))

 

항해를 시작하는 날을 new Date로 받아서  getTime()으로 밀리초로 바꿔줍니다 

항해가 시작한 날로부터 98일 뒤에 항해가 끝나니까 98일을 밀리초로 바꿔 " 항해 시작 + 98일 " 을 해주면

항해가 끝나는 날짜가 계산이 되겠죠

 

이때  시간을 나타내는 계산

1초는 1000 밀리초
1분은 1000 * 60 = 60000밀리초
1시간은 1000 * 60 * 60 = 3,600,000 밀리초
1일은 1000 * 60 * 60 * 24 = 86,400,000 밀리초

 

 

get/set 기본 함수 

 

get은 반환, set은 대입의 역할

let day = new Date('2022-1-18'); 일때

day.getDate(); 는 18를 반환  // day.setDate(13); 은 dt 객체를 2022년 1월 13일로 변경

 

출처 : https://dororongju.tistory.com/116



날짜의 연산

let day = new Date('2022-1-18'); 일때

출처 : https://dororongju.tistory.com/116