Javascript 使用timestamp和Moment.js
我有一个脚本,每天早上9:30更新我的数据库。我正在为我的应用程序使用Ember.js,我需要编写一个函数来检查时间戳是否超过上午9:30。该功能应始终显示数据,因此如果在上午9:30之前,则应显示前一天的数据,如果在上午9:30之后,则应显示当天的数据。因此,本质上,函数将根据一天中的时间返回正确的时间戳。我已经用moment.js尝试过了,但无法理解。任何帮助都会很好Javascript 使用timestamp和Moment.js,javascript,ember.js,momentjs,Javascript,Ember.js,Momentjs,我有一个脚本,每天早上9:30更新我的数据库。我正在为我的应用程序使用Ember.js,我需要编写一个函数来检查时间戳是否超过上午9:30。该功能应始终显示数据,因此如果在上午9:30之前,则应显示前一天的数据,如果在上午9:30之后,则应显示当天的数据。因此,本质上,函数将根据一天中的时间返回正确的时间戳。我已经用moment.js尝试过了,但无法理解。任何帮助都会很好 payload.forEach(function(value) { // console.log("
payload.forEach(function(value) {
// console.log("value: ", value );
var nineThirty = ' 09:30:00';
// Create date from input value
var inputDate = moment( value.updated_at ).format('MM/DD/YYYY');
var date = moment(inputDate + nineThirty);
console.log("input Date: ", date );
// yesterday
var yesterdayDate = moment().subtract(1, 'days');
var YD = moment( yesterdayDate ).format('MM/DD/YYYY');
var yesterday = moment(YD + nineThirty );
console.log("here: ", yesterday );
// Get today's date
var todaysDate = moment().format('MM/DD/YYYY');
var today_date = moment(todaysDate + nineThirty);
//... than something
});
使用isBefore
这将检查现在9:30是否早于当前时间
如果真日期=今天的日期,否则日期为昨天的日期
If(moment().set({hour: 9, minute: 30}).isBefore(moment())){
date = moment().format('MM/DD/YYYY');
}
else{
date= moment().subtract(1, 'days').format('MM/DD/YYYY');
}
当地时间上午9:30或特定于某个时区(如您的服务器)?我相信这种逻辑发生在前端,因此当我得到“todaysDate”时,它将是用户的本地时间。我使用的是Ember.js抱歉,我可能误解了您的问题,但为什么您不能使用isBefore、isAfter、isSame来比较时间?我不知道isBefore,谢谢