如何在JavaScript中计算昨天作为日期?


当前回答

我使用矩库,它非常灵活,易于使用。

在你的情况下:

let yesterday = moment().subtract(1, 'day').toDate();

其他回答

为了概括问题并使用其他差异计算:

var yesterday = new Date((new Date()).valueOf() - 1000*60*60*24);

这将创建一个基于“now”值的新date对象,该值为整数,表示Unix epoch(单位为毫秒减去一天)。

两天前:

var twoDaysAgo = new Date((new Date()).valueOf() - 1000*60*60*24*2);

一小时前:

var oneHourAgo = new Date((new Date()).valueOf() - 1000*60*60);
var date = new Date();

date ; //# => Fri Apr 01 2011 11:14:50 GMT+0200 (CEST)

date.setDate(date.getDate() - 1);

date ; //# => Thu Mar 31 2011 11:14:50 GMT+0200 (CEST)

排在第二的法比亚诺和其他一些人已经给出了类似的答案,但这样做会让事情看起来更明显。

86400000 =一天中的毫秒

const event = new Date(); console.log(new Date(Date.parse(event) - 86400000)) console.log(事件)

试试这个

var d = new Date();
d.setDate(d.getDate() - 1);
new Date(new Date().setDate(new Date().getDate()-1))