본문 바로가기
개발공부_Blog/JavaScript

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

by 소팡팡 2022. 1. 18.

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

 

 

 

댓글