You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Luxon库实现类似C# DateTime.Today的无时间日期比较?

嘿,这个问题我太熟悉啦!在Luxon里实现类似C# DateTime.Today的功能其实超简单,完全不用像原生JS那样手动去设置时分秒那么繁琐。

你只需要用Luxon的链式调用,先获取当前的本地日期时间,再调用startOf('day')方法就能直接把时间部分重置为当日的午夜(也就是00:00:00.000),完美对应你要的忽略时间的当日日期:

const today = luxon.DateTime.local().startOf('day');

这个方法是Luxon官方推荐的写法,比原生JS的new Date(new Date().setHours(0,0,0,0))优雅太多了。而且如果你的需求是和另一个日期对象比较是否为同一天,其实还有更省事的方式——直接用Luxon的hasSame()方法,连重置时间步骤都可以跳过:

// 假设你有一个已有的Date对象或Luxon DateTime对象
const targetDate = luxon.DateTime.fromJSDate(yourExistingDate);
const isSameDay = luxon.DateTime.local().hasSame(targetDate, 'day');

这样直接比较两个日期的「日」部分是否一致,代码更简洁,逻辑也更清晰。

如果确实需要转成原生Date对象来和其他JS Date交互,只需要在后面加个toJSDate()就行:

const todayAsJsDate = luxon.DateTime.local().startOf('day').toJSDate();

内容的提问来源于stack exchange,提问作者Ciaran Gallagher

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.09 14:17:37