관리 메뉴

진취적 삶

30 Date 본문

개발 도서/자바스크립트 deepdive

30 Date

hp0724 2023. 7. 12. 11:40

표준 빌트인 객체 Date는 날짜와 시간을 위한 메서드를 제공하는 빌트인 객체이면서 생성자 함수다 .

기술적인 표기에서는 UTC(협정 세계시) 국제 표준시를 사용

30.1 Date 생성자 함수

Date 생성자 함수는 1970년 1월 1일을 기점으로 한다.

const date = new Date();
console.log(date); //2023-04-04T04:48:36.271Z
const date = new Date();
console.log(date); //2023-04-04T04:48:36.271Z

const date2 = new Date("2023/3/26/10:00:00:00");
console.log(date2); //2023-03-26T01:00:00.000Z

30.2 Date 매서드

30.2.1 Date.now

1970년 1월 1일 기점으로 현재 시간까지 경과한 밀리초를 숫자로 반환

const now = Date.now();
console.log(now);//1680583939447

30.2.4 Date.prototype.getFullYear

Date객체의 연도를 나타내는 정수를 반환한다 .

new Date ('2020/07/24').getFullYear()  //2020 

30.2.22 Date.prototype.toDateString

사람이 읽을 수 있는 형식의 문자열로 Date 객체의 날짜 반환

const today = new Date("2023/4/4");
console.log(today.toString()); //Tue Apr 04 2023 00:00:00 GMT+0900 (대한민국 표준시)
console.log(today.toDateString()); //Tue Apr 04 2023

30.3 Date를 활용한 시계 예제

(function printNow() {
  const today = new Date();

  const dayNames = [
    "일요일",
    "월요일",
    "화요일",
    "수요일",
    "목요일",
    "금요일",
    "토요일",
  ];

  const day = dayNames[today.getDay()];
  const year = today.getFullYear();
  const month = today.getMonth() + 1;
  const date = today.getDate();
  let hour = today.getHours();
  let minute = today.getMinutes();
  let second = today.getSeconds();
  const ampm = hour > 12 ? "PM" : "AM";
  //12시간제
  hour %= 12;
  hour = hour || 12;

  minute = minute < 10 ? "0" + minute : minute;
  second = second < 10 ? "0" + second : second;

  const now = `${year}년 ${month}월 ${date}일 ${day} ${hour} :${minute} :${second} ${ampm}`;

  console.log(now);

  setTimeout(printNow, 1000);
})();

'개발 도서 > 자바스크립트 deepdive' 카테고리의 다른 글

28 Number  (0) 2023.07.12
29 Math  (0) 2023.07.12
21 빌트인 객체  (0) 2023.07.12
22 this  (0) 2023.07.12
23 실행 컨텍스트  (0) 2023.07.12