MomentJs

MomentJs updated_at: 2024-05-27 13:21

Moment

참조

  • https://momentjs.com/

설치

npm install moment --save

사용법

angular에서 moment를 import하는 방법은 버젼마다 조금씩 차이를 보입니다.

v.18 이상

  • tsconfig.json
/* To learn more about this file see: https://angular.io/config/tsconfig. */
{
  ..........
  "compilerOptions": {
    ..........
    "esModuleInterop": true, // JS의 ESM 방식과 node,js의 Commonjs 방식을 호환
import moment from 'moment';
this.ym = moment();

v.18 미만

  • component.ts
import * as moment from 'moment';

this.ym = moment();

Format

https://momentjs.com/docs/ >> Year, month, and day tokens

moment().format("YYYY"); // 2022
moment().format("YY");   // 22
....
moment().format("YYYY-MM-DD"); // 2022-03-03
moment().format("YYYY-M-D"); // 2022-3-3

Manipulating Dates

moment().add(7, 'days');    // 현재 날짜에 7일을 더한다
moment().add(7, 'months');  // 현재 날짜에 7개월을 더한다
moment().add(7, 'years');   // 현재 날짜에 7년을 더한다

Time From Now

moment('2020.01.01', 'YYYY.MM.DD').fromNow(); // 9 days ago
moment('2020.01.01', 'YYYY.MM.DD').fromNow(true); // 9 days

Calculating the Difference Between Dates

const dateB = moment('2019-11-11');
const dateC = moment('2019-10-11');

console.log(`Difference is ${dateB.diff(dateC)} milliseconds`); // Difference is 2678400000 milliseconds
console.log(`Difference is ${dateB.diff(dateC, 'days')} day(s)`); // Difference is 31 day(s)
console.log(`Difference is ${dateB.diff(dateC, 'weeks')} week(s)`); // Difference is 4 week(s)
console.log(`Difference is ${dateB.diff(dateC, 'months')} month(s)`); // Difference is 1 month(s)

나이구하기

const birth = '19900909';
const age = moment().diff(moment(birth).format('YYYYMMDD'), 'years');

unix Time

const unix = moment().unix();

TimeZone

아래 TimeZone에 대한 설명은 node를 기준으로 합니다. 시간되면 angular기준으로 업데이트 해 두겠습니다.

npm i moment-timezone
const moment = require('moment-timezone');


const momenttime = moment().tz('Asia/Seoul');
const hms = momenttime.format('HHmmss');

시간 추가

const temp = moment().tz(process.env.timezone).add(1, 'minutes').format('YYYY-MM-DD HH:mm');
// 시간 format을 유닉스 시간으로 변경
const start_datetime = moment(temp).unix();
평점을 남겨주세요
평점 : 2.5
총 투표수 : 1

질문 및 답글