使用TimeStamps和Moment.js

时间:2017-07-06 01:15:42

标签: javascript ember.js momentjs

我有一个脚本每天上午9:30更新我的数据库。我正在使用Ember.js作为我的应用程序,我需要编写一个函数来检查时间戳是否超过上午9:30。该功能应该始终显示数据,因此如果它在上午9:30之前它应该显示前一天的数据,如果它在之后它应该显示当天的数据。所以基本上该函数会返回一个正确的时间戳,具体取决于它是什么时间。我用moment.js尝试了这个,但无法弄明白。任何帮助都会很棒。

    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
    });

1 个答案:

答案 0 :(得分:1)

使用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');
}