- MomentJS 教程
- MomentJS - 首页
- MomentJS - 概述
- MomentJS - 环境设置
- MomentJS - 简介
- MomentJS - 解析日期和时间
- MomentJS - 日期验证
- MomentJS - Getter/Setter
- 操作日期和时间
- 格式化日期和时间
- MomentJS - 日期查询
- MomentJS - 国际化
- MomentJS - 自定义
- MomentJS - 时长
- MomentJS - 工具函数
- MomentJS - 插件
- MomentJS - 示例
- MomentJS 有用资源
- MomentJS - 快速指南
- MomentJS - 有用资源
- MomentJS - 讨论
MomentJS - 插件
插件是添加到 MomentJS 的扩展功能。MomentJS 是一个开源项目,许多插件都是由其用户贡献的,并可通过 Node.js 和 GitHub 使用。
本章讨论 MomentJS 中提供的一些日历插件和日期格式插件。
日历插件
本节讨论两种类型的日历插件:ISO 日历和台湾日历。
ISO 日历
您可以使用以下命令通过 Node.js 安装它:
npm install moment-isocalendar
您可以从 GitHub 获取 moment-isocalendar.js:https://github.com/fusionbox/moment-isocalendar 请观察以下使用 isocalendar 和 MomentJS 的工作示例:
示例
var m = moment().isocalendar();
输出
示例
var m = moment.fromIsocalendar([2018, 51, 10, 670]).format('LLLL');
输出
台湾日历
您可以使用以下命令通过 Node.js 安装它:
npm install moment-jalaali
您可以从 GitHub 获取 moment-taiwan.js:https://github.com/bradwoo8621/moment-taiwan 请观察以下使用 isocalendar 和 MomentJS 的工作示例:
示例
var m = moment('190/01/01', 'tYY/MM/DD'); var c = m.twYear();
输出
日期格式插件
本节讨论以下类型的日期格式插件:
- Java 日期格式解析器
- 短日期格式化器
- 解析日期格式
- 持续时间格式
- 日期范围
- 精确范围
Java 日期格式解析器
您可以使用以下命令通过 Node.js 安装它:
您可以从 GitHub 获取 moment-jdateformatparser.js:https://github.com/MadMG/moment-jdateformatparser 请观察以下 moment-jdateformatparser 和 MomentJS 的工作示例:
示例
var m = moment().formatWithJDF("dd.MM.yyyy");
输出
短日期格式化器
短日期格式的 JavaScript 文件可以从 GitHub 获取:
https://github.com/researchgate/moment-shortformat语法
moment().short();
显示效果如下表所示:
来自 moment | 来自 moment().short() |
---|---|
0 到 59 秒 | 0 到 59 秒 |
1 到 59 分钟 | 1 到 59 分 |
1 到 23 小时 | 1 小时到 23 小时 |
1 到 6 天 | 1 天到 6 天 |
≥ 7 天且同年 | 显示格式例如:2 月 3 日,3 月 6 日 |
≥ 7 天且不同年 | 显示格式例如:2018 年 2 月 3 日,2018 年 3 月 6 日 |
您可以从上面给出的 GitHub 链接获取 momentshort 脚本。
示例
var a = moment().subtract(8, 'hours').short(); var b = moment().add(1, 'hour').short(true);
输出
如果要删除后缀ago或in,可以将 true 传递给 short(tru。
解析日期格式
您可以使用以下命令通过 Node.js 安装它:
npm install moment-parseformat
示例
var a = moment.parseFormat('Friday 2018 27 april 10:28:10');
输出
请注意,输出显示无论将哪些参数(日期/时间)传递给 parseFormat,它都会给出如上所示的日期格式。
持续时间格式
您可以使用以下命令在 Node.js 上安装持续时间格式:
持续时间格式的代码库在此处可用:https://github.com/jsmreese/moment-duration-format 让我们来看一个使用持续时间格式的工作示例:
示例
var a = moment.duration(969, "minutes").format("h:mm:ss");
输出
这为创建的 moment 添加了更多持续时间细节。
日期范围
您可以使用以下命令在 Node.js 上安装日期范围:
npm install moment-range
示例
window['moment-range'].extendMoment(moment); var start = new Date(2012, 0, 15); var end = new Date(2012, 4, 23); var range = moment.range(start, end); console.log(range.start._d); console.log(range.end._d);
输出
精确范围
精确范围将以日期、时间和人类可读的格式显示确切的日期差。您可以使用以下命令在 Node.js 上安装精确范围:
npm install moment-precise-range-plugin
示例
var a = moment("1998-01-01 09:00:00").preciseDiff("2011-03-04 18:05:06");
输出