一.思路
a.使用new Date(2017,05,12).getTime()返回截止到今天的毫秒数
b.然后将上面的毫秒数减去一天的毫秒数86 400 000
c.然后就通过这两个参数在MongoDB里面查询今天一天的数据
二.科普
a.时间
// 简单的一句代码vardate =newDate(时间戳);//获取一个时间对象/**
1. 下面是获取时间日期的方法,需要什么样的格式自己拼接起来就好了
2. 更多好用的方法可以在这查到 -> http://www.w3school.com.cn/jsref/jsref_obj_date.asp
*/date.getFullYear();// 获取完整的年份(4位,1970)date.getMonth();// 获取月份(0-11,0代表1月,用的时候记得加上1)date.getDate();// 获取日(1-31)date.getTime();// 获取时间(从1970.1.1开始的毫秒数)date.getHours();// 获取小时数(0-23)date.getMinutes();// 获取分钟数(0-59)date.getSeconds();// 获取秒数(0-59)
b.数据库操作
$lt,$lte,$gt,$gte.分别对应: <,<=,>,>=. 该字段是用在condition中的.如果,你想要链式调用,则需要使用
lt,lte,ge,gte.
eg:
model.find({num:{$gt:12}},cb)
model.where(‘num’).gt(12).exec(cb)
User.find({age: {$gte:21, $lte:65}}, callback);//等价于:User.where('age').gte(21).lte(65).exec(callback);
三.闲言少叙,书归正传,
直接上代码,我就是这么简单粗暴!
varmid=mem[0].mid; //mid是会员的id
tplData.mid=mid;
//获取今天的健康记录,有就返回没有就返回空的数组
vardate=newDate();Y=date.getFullYear() +'-';
M= (date.getMonth()+1<10?'0'+(date.getMonth()+1) :date.getMonth()+1) +'-';
D=date.getDate() +' ';
varend=newDate(Y+M+D).getTime()//今天结束时的毫秒数
varstart=end-86400000//今天开始时的毫秒数
console.log("今天的毫秒数"+end)
//下面这个表示查询mid是mid的会员的开始时间到结束时间的数据,也就是该会员今天一天上传的数据
Healthrecord.find({mid:mid,timestamp:{$gte:start,$lte:end}},function(err,health){
console.log("从后台查询出来的数据"+health)
tplData.healthrecord=health;//赋值然后传输到前端
});