仅使用 Date 组件比较两个日期而忽略时间

Compare two dates using Date component only disregarding time

在 C# 中,通常您可以使用 DateTime.Today 来获取今天的日期,而不考虑时间部分(例如,时间部分基本上是午夜)。

我如何使用 Luxom 库做到这一点?

我知道你可以写 DateTime.local() 来获取包含当前时间的 Date 对象,但是没有简单的方法可以有效地忽略时间分量以便我可以与另一个 Date 对象进行比较吗?

我在 Luxon 文档中找不到任何相关信息,尽管我可能遗漏了什么。

在标准的 JS 中,可以这样做:

new Date(new Date().setHours(0,0,0,0));

但这似乎很尴尬?

DateTime.local().toISODate();

这给了我想要的东西。

您可以startOf('day')将午夜设置为给定DateTime:

"Set" this DateTime to the beginning of a unit of time.

然后您可以使用 toJSDate() to get the equivalent Javascript Date or other method like toISO, toISODate(), toFormat() 等来获取 DateTime.

的字符串表示形式

示例:

const DateTime = luxon.DateTime;
console.log( DateTime.local().startOf('day').toJSDate() );
<script src="https://cdn.jsdelivr.net/npm/luxon@1.25.0/build/global/luxon.js"></script>

如果您需要比较 Luxon 天体,请查看手册的 Comparing DateTimes 部分。