Javascript 如何将当前日期时间与某个数据库时间进行比较
我有一个数据库表,其值如下:Javascript 如何将当前日期时间与某个数据库时间进行比较,javascript,angular,typescript,Javascript,Angular,Typescript,我有一个数据库表,其值如下: "295fc51f6b02d01d54a808938df736ed" : { "author" : "James Iva", "authorID" : "JBvLC3tCYCgFeIpKjGtSwBJ2scu1", "geometry" : { "latitude" : 29.4241219, "longitude" : -98.49362819999999 }, "listDate" : 14823
"295fc51f6b02d01d54a808938df736ed" : {
"author" : "James Iva",
"authorID" : "JBvLC3tCYCgFeIpKjGtSwBJ2scu1",
"geometry" : {
"latitude" : 29.4241219,
"longitude" : -98.49362819999999
},
"listDate" : 1482331706209,
"openHours" : {
"Friday" : {
"closeTime" : "17:00",
"openTime" : "09:00",
"status" : true
},
"Monday" : {
"closeTime" : "17:08",
"openTime" : "09:00",
"status" : true
},
"Saturday" : {
"closeTime" : "17:00",
"openTime" : "09:00",
"status" : true
},
"Sunday" : {
"closeTime" : "17:00",
"openTime" : "10:00",
"status" : true
},
"Thursday" : {
"closeTime" : "17:00",
"openTime" : "09:21",
"status" : true
},
"Tuesday" : {
"closeTime" : "17:00",
"openTime" : "04:00",
"status" : false
},
"Wednesday" : {
"closeTime" : "17:00",
"openTime" : "10:00",
"status" : false
}
},
"pPhone" : "no_phone",
"placeAdd" : "San Antonio, TX, USA",
"placeCat" : "Education"
}
}
我要做的是检查该场所在当前时间是否开放(状态为true),并在模板中显示如下内容:
IT'S THURSDAY 4:12PM - WE'RE OPEN!
如何在angular2中实现这一点
以下是我从服务获取数据的订阅代码:
ngOnInit() {
this.sub = this.route.params.subscribe(params => {
this.id = params['id'];
let str = params['string'];
// Retrieve Pet with Id route param
this._placesService.findPetById(this.id).subscribe(place => {
this.place = place; //Here should be the opening data!
});
});
}
要了解如何完成这项工作,请查看以下内容:
@组件({
选择器:“我的应用程序”,
模板:`
你好{{name}
{{opening}}
`,
})
导出类应用程序{
名称:字符串;
开口:弦;
构造函数(){
this.name='Angular2'
这个;
}
private\u getDayName():字符串{
return new Date();
}
//将字符串时间转换为日期,并检查其是否已打开。。
列兵(今天索普林格达:任何):布尔{
const curDate=新日期();
const open=新日期();
const close=新日期();
//设定开放时间
open.setHours(+todaysOpeningData.openTime.split(“:”)[0]);
open.setMinutes(+todaysOpeningData.openTime.split(“:”)[1]);
//设定关门时间
close.setHours(+todaysOpeningData.closeTime.split(“:”)[0]);
close.setMinutes(+todaysOpeningData.closeTime.split(“:”)[1]);
//检查它是否打开!
返回curDate>=打开并curDate this.\u refresh(),60*1000);
}
}
现场演示:
更新:
您应该这样使用它:
this.sub=this.route.params.subscribe(params=>{
this.id=params['id'];
设str=params['string'];
//检索Id为route param的宠物
这是我们的服务
.findPetById(this.id)
.订阅(地点=>{
this.place=place;//这里应该是期初数据!
//假设'this.id'是'295fc51f6b02d01d54a808938df736ed'
this.yourTargetVariable=this.\u检查openinghours(place[this.id]);
});
});
谢谢。我正在研究如何实施它!Yw,又添加了一些注释。效果很好,问题是从subcribe()函数到_checkOpeningHours.Show yoursubscribe()
code.:)获取openingdata常量值请把它添加到你的问题中。应该没问题。请看我的最新答案。我猜place
是您发布的JSON,this.id
是295fc51f6b02d01d54a808938df736ed
。