moment.js -- JavaScript的日期、时间处理工具

时间:2023-01-21 21:26:54

在众多前端UI框架中经常会遇到与日期或者时间相关的组件会依赖moment.js(如element、Ant Design、iview等),刚开始接触会有些许陌生,于是就抽时间了解了一下moment.js,以此记录!

moment.js是一个JavaScript的日期、时间处理工具类,其对于JavaScript的日期时间处理功能非常强悍和全面。可以用在浏览器环境中使用,也可以在Node.js中。在IE8以上及其它浏览器的最新版本中都可以使用,具有良好的跨浏览器及跨系统的兼容性。moment.js不依赖任何第三方库,支持字符串、Date、时间戳以及数组等格式,可以像PHP的date()函数一样,格式化日期时间,计算相对时间,获取特定时间后的日期时间等等

 

安装

moment.js支持的安装方式非常多,你可以在Node.js中通过npm命令安装、可以浏览器中直接引用、可以通过包管理工具Bower安装使用、也可以在Require.js中配置使用……

这里只介绍npm安装

npm install moment

 

使用

基本使用,更多API移步官网文档

当前时间

var now = moment();

字符串

moment(String);
moment(String, String);
moment(String, String, String);
moment(String, String, Boolean);
moment(String, String, String, Boolean);
var day1 = moment("1995-12-25");
var day2 = moment("12-25-1995", "MM-DD-YYYY");
var day3 = moment("12/25/1995", "MM-DD-YYYY");
var time1 = moment("16:14:59", "HH:mm:ss");
var time2 = moment("23:59","HH:mm");
...

 

日期格式化

1 moment().format('MMMM Do YYYY, h:mm:ss a'); // 十一月 23日 2017, 3:48:11 下午
2 moment().format('dddd'); // 星期四
3 moment().format("MMM Do YY"); // 11月 23日 17
4 moment().format('YYYY [escaped] YYYY'); // 2017 escaped 2017
5 moment().format(); // 2017-11-23T15:48:11+08:00

 

moment.js提供了功能强悍的日期时间处理方法,这里仅记录了日期或时间字符串与moment对象 的相互转换方式,以应对工作中的日期与时间问题,获取完整API介绍,请访问moment.js官网