반응형
moment 사용하기
# 폴더 생성 및 열기
mkdir moment_practice
cd moment_practice
# package.json 초기화
npm init -y
# moment.js 설치
npm install moment
현재 날짜: moment()
//현재 날짜: moment()
// moment_practice.js
const moment = require("moment");
// 현재 날짜
console.log("========== today ==========");
console.log(moment());
특정 날짜 지정: moment('date')
// 특정 날짜 지정: moment('date')
// 특정 날짜 지정
console.log("========== specific date ==========");
console.log(moment("2021-01-27", "YYYY-MM-DD")); // Moment<2021-01-27T00:00:00+09:00>
형식 지정: format()
// 형식 지정: format()
// 현재 날짜 형식 지정
console.log("========== format ==========");
let date = moment("2021-01-27");
// 년-월-일
console.log(date.format("YYYY-MM-DD")); // 2021-01-27
// 시:분:초
console.log(date.format("HH:mm:ss")); // 00:00:00
// 요일
console.log(date.format("dddd")); // Wednesday
// 년-월-일 요일
console.log(date.format("YYYY-MM-DD dddd")); // 2021-01-27
// 년-월-일 시:분:초
console.log(date.format("YYYY-MM-DD HH:mm:ss")); // 2021-01-27 00:00:00
// 년-월-일 요일 시:분:초
console.log(date.format("YYYY-MM-DD dddd HH:mm:ss")); // 2021-01-27 Wednesday 00:00:00
// 날짜 더하거나 빼기: add(), subtract()
// 날짜 더하거나 빼기
console.log("========== add or subtract day, month, year ==========");
console.log(moment("2021-01-27").add(1, "days")); // 2021-01-28
console.log(moment("2021-01-27").add(2, "months")); // 2021-03-27
console.log(moment("2021-01-27").add(2, "years")); // 2023-01-27
console.log(moment("2021-01-27").subtract(1, "days")); // 2021-01-26
console.log(moment("2021-01-27").subtract(2, "months")); // 2020-11-27
console.log(moment("2021-01-27").subtract(2, "years")); // 2019-01-27
날짜 더하거나 뺄 때 생길 수 있는 문제점
한 moment 변수를 기준으로 날짜를 연속적으로 더하거나 빼게 되면 해당 변수도 add or subtract 함수를 실행하는 도중 값이 변하게 된다.
// 날짜 더하거나 뺄 때 생길 수 있는 문제점
// 한 moment 변수를 기준으로 날짜를 연속적으로 더하거나 빼게 되면 해당 변수도 add or subtract 함수를 실행하는 도중 값이 변하게 된다.
// 날짜 더하고 뺄 때 문제점
console.log("========== problems when adding or subtracting dates ==========");
let now = moment("2021-01-27");
console.log(now.add(3, "days")); // 2021-01-30
console.log(now.subtract(5, "days")); // 2021-01-25
console.log(now); // 2021-01-25
// 해결 방법: clone()
//add or subtract를 하기 전에 clone() 함수를 사용하면 된다.
// 해결 방법
console.log("========== solutions to the above problems ==========");
let fixedNow = moment("2021-01-27");
console.log(fixedNow.clone().add(3, "days")); // 2021-01-30
console.log(fixedNow.clone().subtract(5, "days")); // 2021-01-22
console.log(fixedNow); // 2021-01-27
https://millo-l.github.io/Nodejs-moment-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0/
반응형
'프로그래밍 > Script' 카테고리의 다른 글
[javascript] getDay() 날짜의 요일을 숫자로 반환 , JavaScript Get Date Methods (0) | 2021.10.18 |
---|---|
[javascript] How to output numbers with leading zeros in JavaScript? ZeroPad (0) | 2021.10.14 |
[Node.js] split() function (0) | 2021.08.23 |
[jQuery] id like 찾기 (0) | 2021.08.19 |
메일 수신확인 원리 - 웹서비스 (0) | 2021.08.11 |