繁体   English   中英

将 Luxon 日期格式化为 ISO8601 基本格式

[英]Format Luxon date to ISO8601 basic format

我正在使用 Luxon 来格式化 DateTime,我需要它是以下格式,包括“T”和“Z”字符:

20150830T123600Z

我尝试使用以下格式格式化 DateTime:

let dateTimeNow = DateTime.now();
let formattedDateTime = dateTimeNow.toFormat('yyyyMMddTHHmmssZ');

但我得到了格式:

2021-05-25T12:43:37.043Z 

如何删除“-”、“:”和“。” 符号?

您可以使用单引号 (Doc: Escaping ) 转义字符串,因此您可以使用toFormat("yyyyMMdd'T'HHmmss'Z'")

请注意,末尾的Z代表 UTC+0 偏移量,因此我建议不要使用它来表示具有不同偏移量的本地时间。

例子:

 const DateTime = luxon.DateTime; let dateTimeNow = DateTime.utc(); let formattedDateTime = dateTimeNow.toFormat("yyyyMMdd'T'HHmmss'Z'"); console.log(formattedDateTime)
 <script src="https://cdn.jsdelivr.net/npm/luxon@1.26.0/build/global/luxon.js"></script>

您也可以使用基本的 ISO 格式,而不是编写格式:

 const DateTime = luxon.DateTime; let dateTimeNow = DateTime.now().toUTC().startOf('second'); console.log(dateTimeNow.toISO({ format: 'basic', suppressMilliseconds: true }))
 <script src="https://cdn.jsdelivr.net/npm/luxon@2.2.0/build/global/luxon.js"></script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM