两个Javascript日期变量

Two Javascript Date Variables

本文关键字:变量 日期 Javascript 两个      更新时间:2023-09-26

我似乎无法理解有两个日期变量所需的语法。

var videodate = new Date(2014,7,5);
var previousdate = videodate.getDate()-1;

这允许我在页面上有两个链接:

<a href="today.mp4">{videodate}</a>
<a href="yesterday.mp4">{previousdate}</a>

我发现的是我四处寻找的解决方案:

videodate.setDate(videodate.getDate()-1)

但是这会改变'videodate'变量。我只是想能够阅读'videodate',以指定' preoudate '!比如:

var previousdate = new Date(videodate.getDate()-1)

为前一个日期创建一个单独的新日期对象,通过使用.getTime()将其设置为与第一个日期相同的日期,然后对其执行-1,使两个日期相互独立。

var videodate = new Date(2014,7,5);
var previousdate = new Date(videodate.getTime());
previousdate.setDate(previousdate.getDate()-1);

您可以在构建一个新的date对象时减去以毫秒为单位的时间:

var videodate = new Date(2014,7,5);
var previousdate  = new Date(videodate.getTime() - (24 * 60 * 60 * 1000));

或者选择使用moment.js,它会让你的生活更轻松的日期的东西:

var videodate = new Date(2014,7,5);
var previousdate = moment(videodate).subtract('days', 1);

在这两种方法中,原始的videodate变量都不会被触及。

演示:http://jsfiddle.net/IrvinDominin/pcPCJ/

转换为时间戳

var videodatets = new Date('July 07 2014').getTime();
var previousdatets = videodatets-24*60*60*1000;
var videodate=new Date(videodatets);
var previousdate=new Date(previousdatets);
alert(videodate);
alert(previousdate);