MomentJs
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();