moment技术

作者:刘婧博

邮箱:[email protected]

1 历史、现状和发展

Moment.js核心库提供了基于偏移量值调整时间的功能。

Moment.js有一个非常灵活和先进的解析器,允许大范围的功能。解析器的灵活性也使其成为Moment.js中最常被滥用的工具之一。

轻量级JavaScript日期库,用于分析,验证,操作和格式化日期。

Moment的解析器支持为日期字符串指定多种可能的格式。

2 安装和使用

2.1 安装

2.1.1 在Node.js中安装使用

在Node.js中通过npm安装后,require引用即可。

npm install moment

var moment = require('moment'); moment().format();

2.1.2 在浏览器中安装使用

在Node.js中通过npm安装后,require引用即可。

2.1.3 通过Bower安装

Bower是一个前端包管理工具,通过Bower可以方便的安装管理Moment.js。

bower install --save moment

2.1.4 在Require.js中安装使用

在Require.js中,你可以将Moment.js配置为一个全局对象:

require.config({ paths: { "moment": "path/to/moment", } }); define(["moment"], function (moment) { moment().format(); });

也可以按非全局的方式配置:

require.config({ config: { moment: { noGlobal: true } } });

2.2 使用

2.2.1 初始化为当前时间

moment();

获取当前日期时间,使用moment()方法即可,无需传入任何参数:

var now = moment();

上面的方法等价于moment(new Date())。

2.2.2 使用一个String参数进行初始化

moment()方法可以通过一个字符串参数,初始化时间,使用格式如下:

moment(String);

传入一个字符串参数时,moment()会首先按ISO 8601进行格式匹配,之后会调用new Date(string)构造函数

var day = moment("1995-12-25");

2.2.3 使用String + Format参数进行初始化

moment(String, String); moment(String, String, String); moment(String, String, Boolean); moment(String, String, String, Boolean);

如果已知输入的字符串字符串的格式,你可以这样将其转为一个Moment对象:

moment("12-25-1995", "MM-DD-YYYY");

以下两种设置形式会返回相同的值,因为转换器会忽略非文数字:

moment("12-25-1995", "MM-DD-YYYY"); moment("12/25/1995", "MM-DD-YYYY");

2.2.4 使用String + Formats参数进行初始化

2.2.5 使用Special Formats特殊字符串进行初始化

2.3 示例

创建

格式化

转化成 Date 对象

获取/设置时间信息

操作

查询

3 同类技术对比

moment.js不依赖任何第三方库,支持字符串、Date、时间戳以及数组等格式,可以像PHP的date()函数一样,格式化时间,计算相对时间,获取特定时间后的日期时间等等。

moment.js提供了丰富的说明文档,使用它还可以创建日历项目等复杂的日期时间应用。

参考资料

results matching ""

    No results matching ""