选择“仅限周末的日期”
Select Dates for Weekends Only
我正试图查询我的mongoDB集合,以返回包含字段selectedDate
的文档,并检查日期字符串是否在周末(周六[6]或周日[0])。
如何将字段的值传递给函数进行检查?data
返回undefined,但我不确定如何将其正确存储在var中。
查询
Entry.
find({}).
where('selectedDate').equals(thisWeekend(data)).
exec(function(err, entries) {
console.log('Events on a weeked' + ' ' + entries);
});
功能
function thisWeekend(data) {
var today = data.getDay();
if (today == 6 || today == 0) {
console.log('WEEKEND BITCHES');
} else {
console.log('Not the weekend');
}
};
你不是那样做的,你是这样做的:
Entry.aggregate(
[
{ "$redact": {
"$cond": {
"if": {
"$or": [
{ "$eq": [ { "$dayOfWeek": "$selectedDate" }, 1 ] },
{ "$eq": [ { "$dayOfWeek": "$selectedDate" }, 7 ] }
]
},
"then": "$$KEEP",
"else": "$$PRUNE"
}
}}
],
function(err,results) {
if (err) throw err;
// results is weekend days only
}
)
$redact
管道运算符通过逻辑表达式过滤文档,这里使用$dayOfWeek
来查找工作日值。
另一种情况是$where
表达式,但由于这确实需要JavaScript评估,因此它实际上比聚合操作运行得慢得多。实际上,您应该只将其用于MongoDB 2.4或没有$redact
:的早期版本
Entry.find(
{
"$where": function() {
var day = this.selectedDate.getUTCDay();
return ( day == 6 || day == 0 );
}
},
function(err,results) {
if (err) throw err;
// Just weekends
}
)
您真正应该在UTC日期致电.getUTCDay()
的地方。
相关文章:
- 如果是周末javascript,请更改日期
- 下周末'javascript中的s datetime返回无效日期
- 检查日期是否为周末javascript
- 在magento日期选择器中禁用周末
- 选择“仅限周末的日期”
- 在 JavaScript 日期计算中排除周末
- jQuery UI 日期选择器 - 禁用公共假期、周末、第二天上午 10 点之后,只允许周二、周三和周四作为可选日期
- 计算未来日期,不包括节假日和周末
- 如何在没有周末的情况下添加天数以从当前日期获取下一个日期
- 交货日期 Javascript 适应排除周末
- JQuery UI 日期选择器禁用周末,但允许特定日期
- 我正在计算两个日期之间的天数,没有周末从 javascript 中的日期选择器获取
- 使用当前日期生成一周的所有日期,并在周一显示周开始日期,在周日显示周末
- 如何从jquery日期选择器禁用周末和特定时间后的前几天的假期
- Javascript日期选择器排除了周末,一个日期数组&每周特定的一天
- HighCharts日期时间x轴没有丢失值(周末)
- 显示从现在起30天的日期,只有第30天检测是否为正确日期的周末或假日
- 确定日期是周末还是工作日
- 获取日期从今天到周末
- 不计算两个日期之间的假期或周末