前端常用的时间格式配置格式

简介: 前端常用的时间格式配置格式

概述

我现在用的很多软件(如:Code、Obsidian、PicGo)或前端浏览器插件(如:Markdownload)或 静态站点生成器(如:Hexo)都是基于 JavaScript 技术的。这里配置项常常会涉及到时间格式的配置。而与时间有关的往往都会用到 moments.js 这个库。

Moments.js 已经在数百万个项目中成功使用,其为使 web 上的日期和时间更好做出了贡献。截至 2020 年 9 月,Moment 每周下载量超过 1200 万次!

Moments.js 格式

这是最健壮的显示选项。它接受一个 token 字符串,并用它们对应的值替换它们。

moment().format();                                // "2014-09-08T08:02:17-05:00" (ISO 8601, no fractional seconds)
moment().format("dddd, MMMM Do YYYY, h:mm:ss a"); // "Sunday, February 14th 2010, 3:25:50 pm"
moment().format("ddd, hA");                       // "Sun, 3PM"
moment().format("[Today is] dddd");               // "Today is Sunday"
moment('gibberish').format('YYYY MM DD');         // "Invalid date"
JAVASCRIPT
Token Output
月份 M 1 2 … 11 12
Mo 1st 2nd … 11th 12th
MM 01 02 … 11 12
MMM Jan Feb … Nov Dec
MMMM January February … November December
每月几日 D 1 2 … 30 31
Do 1st 2nd … 30th 31st
DD 01 02 … 30 31
星期几 d 0 1 … 5 6
do 0th 1st … 5th 6th
dd Su Mo … Fr Sa
ddd Sun Mon … Fri Sat
dddd Sunday Monday … Friday Saturday
每年的第几周 w 1 2 … 52 53
wo 1st 2nd … 52nd 53rd
ww 01 02 … 52 53
YY 70 71 … 29 30
YYYY 1970 1971 … 2029 2030
Y 1970 1971 … 9999 +10000 +10001
注 : 本文件符合 ISO 8601 标准,适用于 9999 年以后的日期
AM/PM A AM PM
a am pm
H 0 1 … 22 23
HH 00 01 … 22 23
h 1 2 … 11 12
hh 01 02 … 11 12
k 1 2 … 23 24
kk 01 02 … 23 24
m 0 1 … 58 59
mm 00 01 … 58 59
s 0 1 … 58 59
ss 00 01 … 58 59
Fractional Second S 0 1 … 8 9
SS 00 01 … 98 99
SSS 000 001 … 998 999
SSSS … SSSSSSSSS 000[0…] 001[0…] … 998[0…] 999[0…]
时区 z or zz EST CST … MST PST Note: as of 1.6.0, the z/zz format tokens have been deprecated from plain moment objects. Read more about it here. However, they do work if you are using a specific time zone with the moment-timezone addon.
Z -07:00 -06:00 … +06:00 +07:00
ZZ -0700 -0600 … +0600 +0700
Unix Timestamp X 1360013296
Unix Millisecond Timestamp x 1360013296123

本地化的格式

由于首选格式根据语言环境的不同而不同,因此可以使用一些标记来根据语言环境对某个时刻进行格式化。

在相同的格式上有大写和小写的变化。小写版本是其大写版本的缩写版本。

Time LT 8:30 PM
Time with seconds LTS 8:30:25 PM
Month numeral, day of month, year L 09/04/1986
l 9/4/1986
Month name, day of month, year LL September 4, 1986
ll Sep 4, 1986
Month name, day of month, year, time LLL September 4, 1986 8:30 PM
lll Sep 4, 1986 8:30 PM
Month name, day of month, day of week, year, time LLLL Thursday, September 4, 1986 8:30 PM
llll Thu, Sep 4, 1986 8:30 PM

默认格式

调用没有格式的 moment#format 将默认为 moment.defaultformat。此时,moment.defaultFormat 为 ISO8601 格式 YYYY-MM-DDTHH:mm:ssZ

自 2.13.0 版本起,在 UTC 模式下,默认格式由 moment.defaultFormatUtc 控制,格式为 YYYY-MM-DDTHH:mm:ss[Z]。这将返回 Z 作为偏移量,而不是 +00:00

举例

比如:

  • 我的浏览器插件配置为:YYYY-MM-DD HH:mm:ss, 显示效果为:2021-09-18 15:36:16
  • 我的 obsidian 模板插件配置为:YYYY-MM-DD_ddd,显示效果为:2021-09-14_周二
  • 我的博客配置为:LL a,显示效果为:2021 年 9 月 18 日 下午

参考链接

📑参考链接:

Moment.js format

相关文章
|
1月前
|
前端开发 JavaScript
前端常用的ESlint配置
前端常用的ESlint配置
37 1
|
16天前
|
前端开发 应用服务中间件 nginx
Nginx配置详解Docker部署Nginx使用Nginx部署vue前端项目
Nginx配置详解Docker部署Nginx使用Nginx部署vue前端项目
75 0
|
7月前
|
前端开发 Java
(前后端分离)SpringBoot配置全局跨域,前端一访问就报错的原因竟然是这个
(前后端分离)SpringBoot配置全局跨域,前端一访问就报错的原因竟然是这个
172 0
|
1月前
|
前端开发 小程序 编译器
前端开发新电脑配置(菜菜最为 详细的配置)
前端开发新电脑配置(菜菜最为 详细的配置)
|
5月前
|
JavaScript 前端开发
前端vue配置多个代理 axios的使用
前端vue配置多个代理 axios的使用
76 0
|
2月前
|
前端开发 JavaScript Windows
前端秘法引言(配置vscode, 以及html的基础)
前端秘法引言(配置vscode, 以及html的基础)
173 0
|
6月前
|
前端开发 Java 应用服务中间件
配置SpringMVC的前端控制器DispatcherServlet时,<url-pattern>中“/“和“/*“的区别
配置SpringMVC的前端控制器DispatcherServlet时,<url-pattern>中“/“和“/*“的区别
|
8月前
|
前端开发 定位技术
前端学习笔记202305学习笔记第二十三天-地图单线程配置
前端学习笔记202305学习笔记第二十三天-地图单线程配置
63 0
前端学习笔记202305学习笔记第二十三天-地图单线程配置
|
4月前
|
JavaScript 前端开发 算法
【从0配置JAVA项目相关环境2】node.js + 前端 从配置到运行
【从0配置JAVA项目相关环境2】node.js + 前端 从配置到运行
60 0
|
4月前
|
监控 前端开发 应用服务中间件
Zabbix【部署 01】Zabbix企业级分布式监控系统部署配置使用实例(在线安装及问题处理)程序安装+数据库初始+前端配置+服务启动+Web登录
Zabbix【部署 01】Zabbix企业级分布式监控系统部署配置使用实例(在线安装及问题处理)程序安装+数据库初始+前端配置+服务启动+Web登录
411 0