gpt4 book ai didi

javascript - 搜索时间戳大于X天的对象

转载 作者:行者123 更新时间:2023-11-28 18:12:52 26 4
gpt4 key购买 nike

这周我已经把自己累坏了!我未能修复一个应该用一些基础数学来解决的错误。

我的 mongodb 数据库中有一些“事件”对象,它们是使用日期字段创建的,在预保存 Hook 中,我计算年份数字并将其放置到模型上。例如。

1 月 1 日 = 1

1 月 5 日 = 5

12 月 31 日 = 365

我的应用程序的用户可以搜索当前日期之前 X 天的事件。我的查询是这样的:

{
day_number: { $gte: start_day, $lte: end_day}
}

现在已经到了年底了,有一个逻辑错误。

假设输入为 12 月 22 日至 1 月 2 日

我的查询正在进行:

{
day_number: { $gte: 356, $lte: 2}
}

这当然不会返回任何结果,因为没有数字大于或等于 356 且小于或等于 2。

对于修复此问题有什么建议,而不涉及破坏虽然损坏但简单的查询吗?

最佳答案

您可以测试结束日期是否小于开始日期,然后调整结束日期,如下所示:

var start_day;
var end_day;
var numDaysInbetween = 0;
var day_number = {}

/* test 1 */
start_day = 50;
end_day = 55;

/* test 2 */
start_day = 356;
end_day = 2;

if (start_day > end_day) {
end_day += 365;
}
day_number = { $gte: start_day, $lte: end_day };

alert(day_number.$lte - day_number.$gte);

关于javascript - 搜索时间戳大于X天的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41291072/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com