繁体   English   中英

如何在JavaScript中操作日期

[英]How to manipulate date in javascript

我在操作日期时遇到问题。 我在localstorage中有一个变量saveTime变量,其中包含以下日期:

Wed Aug 31 2016 16:31:30 GMT-0300 (Hora oficial do Brasil)

我需要为该变量saveTime添加1小时,以检查是否经过了1小时:

var savedTime = new Date(savedTime); //converts string to date object
var checkExpired = savedTime.setHours(savedTime.getHours() + 1); //add 1 hour to savedTime

但是,尝试在此变量上添加1小时以转换对象中的字符串时,此( savedTime )返回:

1472675490000

我期望的是带有+ 1小时的字符串:

Wed Aug 31 2016 17:31:30 GMT-0300 (Hora oficial do Brasil)

并比较日期以检查是否经过了1小时

var currentDate = new Date();
if(currentDate > checkExpired) {
    //passed 1 hour
}

instance.setHours()操作实例。 所以你可以做

d = new Date('Wed Aug 31 2016 16:31:30 GMT-0300');
d.setHours(d.getHours() + 1);

现在d包含新的日期时间。

setHours将操纵当前对象并返回它的新值。 与其继续使用返回值,不如继续使用该对象。

var savedTime = new Date(savedTime); //converts string to date object
savedTime.setHours(savedTime.getHours() + 1); //add 1 hour to the savedTime

if (currentDate > savedTime) {
    //passed 1 hour
}

您会从1970年1月1日的“纪元日期”以毫秒为单位取回值。

如果您希望采用正确的格式,则需要使用一些数学/其他Date对象函数将此信息解析为该信息。

这是执行此操作的文档,非常简单:

JS日期格式

使用.getTime()

if(currentDate.getTime() > checkExpired) {
    //passed 1 hour
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM