7

我正在尝试从当前日期和时间获取最后一个小时、上个月和昨天,我正在使用 Date() 对象来获取当前日期和时间:

function fetchCurrentDateTime() {
    var currentDateobj = new Date()
    var Day = currentDateobj.getDate()
    var Hour = currentDateobj.getHours()
    var Month = 1+(currentDateobj.getMonth())
    var Year = currentDateobj.getFullYear()
    console.log('Today is:', Day+'-'+Month+'-'+Year);
    console.log('yesterday was:', Day-1+'-'+Month+'-'+Year);
    console.log('Its', Hour, 'hrs');
    console.log('It was', Hour-1, 'an Hour back.');
    console.log('This is:', Month, 'Month');
    console.log('It was', Month-1, 'Month, a month ago.');
    console.log('It is', Year);
    }

我想要一个函数,它不仅会返回日期或时间,还会返回完整的日期时间,例如:

Today: '2013-05-21 10:06:22'
Yesterday: '2013-05-20 10:06:22'
Current Hour: '2013-05-21 10:06:22'
Last Hour: '2013-05-21 09:06:22'
Current Month: '2013-05-21 10:06:22'
Last Month: '2013-04-21 10:06:22'

我还想问一下,如果 hour 是00:00:00,那么 last hour 的结果会是什么?月份和日期也是如此。

4

1 回答 1

17
var today = new Date();
var yesterday = new Date(today.getTime() - (1000*60*60*24));
var hourago = new Date(today.getTime() - (1000*60*60));

console.log(today);
console.log(yesterday);
console.log(hourago);

getTime()返回Date对象的时间戳。然后,您可以减去适当的毫秒数并从该数字中创建一个新对象。如果需要,您现在可以按您希望的方式格式化日期。

于 2013-05-22T05:48:15.467 回答