我想比较 MongoDB 中的日期和我的日期。
我的代码:
today: function() {
var today = moment().format();
return Posts.find({createdAt : { $gte : today}}) // show posts created in "future" , so this function must return nothing
},
createdAt = moment().format();// in MongoDB
因此,这种构造不起作用,但如果我比较谎言:
var today = moment().format();
var daystart = moment().startOf('day').format();
if (daystart > today){
console.log ("YES");
}
else if (daystart < today)console.log ("NO");
返回
"NO"
有人帮忙吗?
编辑:
today: function() {
var today = moment().toDate();
var daystart = moment().startOf('day').toDate();
// console.log(today + daystart);
return Posts.find({createdAt : { $gt : today}})
},
week: function() {
var today = new Date();
return Posts.find({createdAt : { $lt : today}})
},
month: function() {
var today = new Date();
return Posts.find({createdAt : { $ne : today}})
}
createdAt = new Date();
最佳答案
.format()
方法是一个显示辅助函数,它根据传递的 token 参数返回日期字符串表示。要将 MongoDB 中的日期与当前日期和时间进行比较,只需调用 moment()
不带参数,不带 .format()
方法并通过调用 toDate()
获取 Moment.js 包装的 native Date 对象 方法:
today: function() {
var now = moment().toDate();
return Posts.find({createdAt : { $gte : now }});
}
关于mongodb - 在 MongoDB 中比较日期(moment.js),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31475312/