在新的Date()的帮助下我如何实现这一目标。我的代码:
var temp =new Date("October 13, 2014 22:34:17");
console.log(new Date(temp-1));
需求:
before: Aug 4, 2014 11:59pm (EDT)
after: Aug 3, 2014 11:59pm (EDT)
您需要指定减去的时间量。目前它的1,但1什么?因此,尝试使用getDate()
获取日期,然后从中减去,然后使用setDate()
设置日期。
EG
var temp = new Date("October 13, 2014 22:34:17");
temp.setDate(temp.getDate()-1);
简单的答案是你要从中减去几毫秒的天数。如下所示
var today = new Date('October 13, 2014 22:34:17');
var yesterday = new Date(today.getTime() - (24*60*60*1000));
console.log(yesterday);
这样做的问题在于,这确实提前24小时提供给您,由于夏令时的变化等原因,这并不总是提前一天。如果这是你想要的,那很好。如果你想要更复杂的东西,请查看moment.js
您可以简单地从今天的日期减去一天,如下所示:
var yesterday = new Date(new Date().setDate(new Date().getDate()-1));