【问题标题】:Parsing date from DD/MM/YYYY with Luxon javascript使用 Luxon javascript 从 DD/MM/YYYY 解析日期
【发布时间】:2022-11-30 16:24:43
【问题描述】:
我有一个格式为“DD/MM/YYYY”的日期,我想使用 Luxon 库将其转换为 DateTime 对象。我该怎么做?
我知道我们可以使用 .fromISO()、.fromHTTP()、.fromSQL()、.fromJSDate() 和 .fromFormat() 等方法,但它们都不接受我的格式,例如:“31/12/2022”
我尝试使用 fromFormat( date, 'D' ) 但它无效,因为“D”格式等于“MM/DD/YYYY”。
【问题讨论】:
标签:
javascript
momentjs
luxon
【解决方案1】:
您可以使用 fromFormat :
从输入字符串和格式字符串创建 DateTime。如果未指定区域设置,则默认为 en-US,无论系统的区域设置如何。有关令牌及其解释的表格,请参阅here。
传递 "d/M/yyyy" 作为第二个参数。例子:
const DateTime = luxon.DateTime;
console.log(DateTime.fromFormat("31/12/2022", "d/M/yyyy").toISO());
<script src="https://cdn.jsdelivr.net/npm/luxon@3.1.1/build/global/luxon.min.js"></script>
请查看文档的Parsing部分和Table of tokens以查看可用令牌列表。正如文档所述:
请注意,formatter 支持的许多令牌是不是解析器支持。
在你的情况下“D”是格式标记您可以使用独立代币解析您的输入字符串。