MomentJS - 字符串



这将使用字符串作为日期,并使用 moment 进行解析。

语法

moment(string)

观察以下示例及其在向 moment 提供不同日期字符串时的输出。

示例 1

var day = moment("2017-04-15");

为了显示日期,我们使用了 day._d 从 moment 获取日期详细信息。

输出

String

示例 2

var day = moment("2017-W10-5");

或者

var day = moment("2017W105");

请注意,在提供给 moment 的字符串 "2017-W10-5" 中,W 代表星期。您可以观察以下输出,其中 W10 对应于 3 月份。

输出

String Week

示例 3

var day = moment("2017-080");

或者

var day = moment("2017080");

这里,字符串 2017-080 是第 80 天,对应于 3 月 21 日,如下所示。

输出

String March

示例 4

var day = moment("2017-05-08T09");

或者

var day = moment("20170508T09");

这里,字符串 2017-05-08T09 提供给 moment,其中 T 后面的数字表示要显示的小时。

输出

String Hour

示例 5

var day = moment("2017-06-08 06:30:26");

或者

var day = moment("20170608T063026");

我们还可以将小时、分钟或秒传递给 moment,输出如下所示:

输出

String Moment

使用字符串格式的 Moment

下表显示了年、月、日的格式详细信息。

格式 示例 详细信息
YYYY 2018 显示 4 位数年份
YY 18 显示 2 位数年份
Q 1-4 显示季度
M 或 MM 1-12 月份数字
MMM 或 MMMM Jan-Dec 或 January - December 月份名称
D 或 DD 1-31 月份中的日期
Do 1st-31st 带序数的月份中的日期
DDD 或 DDDD 1-365 一年中的日期
X 1598773566.565 Unix 时间戳
x 1598773566565 以毫秒为单位的 Unix 时间戳

下表显示了星期、星期年和星期的格式详细信息:

输入 示例 详细信息
gggg 2018 区域设置 4 位数星期年
gg 18 区域设置 2 位数星期年
w 或 ww 1-53 一年中的星期
e 0-6 星期几
ddd 或 dddd Mon-Sun 或 Monday-Sunday 星期名称
GGGG 2018 ISO 4 位数年份
GG 18 ISO 2 位数年份
W 或 WW 1-53 ISO 一年中的星期
E 1-7 ISO 星期几

下表显示了小时、分钟、秒、毫秒的格式详细信息:

格式 示例 详细信息
H 或 HH 0-23 24 小时制时间
h 或 hh 1-12 12 小时制时间
k 或 kk 1-24 从 1 开始的 24 小时制时间
a A am pm 下午或上午
m 或 mm 0-59 分钟
s 或 ss 0-59
S 或 SS 或 SSS 0-999 小数秒
Z 或 ZZ +12:00 相对于 UTC 的偏移量,格式为 +-HH:mm、+-HHmm 或 Z

您可以使用如下所示的命令检查日期是否根据字符串格式有效:

var day = moment('2018.05.25', 'YYYY-MM-DD').isValid();

正如您在下面显示的输出中观察到的,这将返回 true,因为日期格式正确:YYYY、MM 和 DD。

String Six

如果将相同的日期更改为如下所示,则输出将为 false,如下所示:

var day = moment('05.25', 'YYYY-MM-DD').isValid();
String False

您还可以根据需要格式化日期,如下面的示例所示:

示例 1

var day = moment('2018/05/25').format("YYYY-MM-DD");

输出

String Format Date

示例 2

var day = moment('20170608T063026').format("YYYY-MM-DD HH:mm:ss");

输出

String HHMMSS

示例 3

var day = moment("634", "Hmm").format("HH:mm");

输出

String HHMM

示例

可以解析多个格式,其中格式以数组形式传递,如下所示:

var day = moment("12-25-1995",["MM-DD-YYYY", "YYYY-MM-DD"]).isValid();

输出

String Multiple Format

由于给定的日期与其中一个格式匹配,因此给出的输出为 true。

momentjs_parsing_date_and_time.htm
广告

© . All rights reserved.