📜  讨论MomentJS(1)

📅  最后修改于: 2023-12-03 15:41:42.642000             🧑  作者: Mango

MomentJS介绍

MomentJS是一个JavaScript日期库,用于解析,验证,操作和格式化日期。它提供了一些方便的功能,例如排序,时间区间比较等等。MomentJS分布在客户端和服务器端代码中。

安装

MomentJS可以通过npm或从MomentJS官网下载。

通过npm:

npm install moment

从MomentJS官网下载:https://momentjs.com/

基本用法
日期格式化

MomentJS可以使用format()方法将日期格式化为字符串。以下是基本的日期格式:

const now = moment(); // 当前日期时间
now.format(); // "2021-09-09T22:36:19+01:00",ISO 8601 扩展格式
now.format("YYYY-MM-DD"); // "2021-09-09"
now.format("h:mm:ss a"); // "10:36:19 pm"
获取/设置日期

MomentJS提供了一些方便的方法用于获取和设置日期和时间。

const now = moment(); // 当前日期时间
now.year(); // 获取年份
now.month(); // 获取月份, 从0开始
now.date(); // 获取日期
now.day(); // 获取星期几,0表示星期日

now.set('year', 2022); // 设置年份
now.set('month', 3); // 设置月份, 从0开始
now.set('date', 15); // 设置日期
解析日期

MomentJS可以从字符串解析日期:

const dateStr = '2021-09-09';
const date = moment(dateStr);

console.log(date.year()); // 2021
console.log(date.month()); // 8,月份从0开始
console.log(date.date()); // 9

MomentJS还可以从其他日期对象和时间戳转换。

时间操作

MomentJS提供了一些常用的时间操作,如添加/减去一定数量的天数,小时,分钟和秒:

const now = moment();

now.add(1, 'day');
console.log(now.format("YYYY-MM-DD")); // 明天的日期

now.subtract(2, 'hours');
console.log(now.format("h:mm:ss a")); // 8:37:42 pm
日期比较

MomentJS可以比较日期之间的间隔,计算年龄等等。

const date1 = moment('1977-08-20');
const date2 = moment('2021-09-09');

date2.diff(date1, 'years'); // 44, 计算年龄
date2.diff(date1, 'weeks'); // 2477, 计算间隔的周数
结论

MomentJS提供了一些方便的方法,来简化日期的处理与操作。在日常工作中提高效率。同时MomentJS还具备一定的扩展性,在部分方面也是开发必备。现在,它已经成为了JavaScript开发的标准之一。