繁体   English   中英

取得格林尼治标准时间+ 1

[英]Get current day + 1 in GMT

我可以获取当前日期,但是我不知道如何获取当前日期+ 1天(格林尼治标准时间)

var now = new Date();
var newexp = (now + 3);
var show = newexp.getGMTString();

alert(show);

我真正想做的是将Cookie设置为在1天后过期。

function SetCookie(name, value, exp) {
 var now = new Date();
 var newexp = (now + exp); // exp being # of days before expiration
 document.cookie= name + "=" + value+ "; expires=" + newexp.getGMTString() + ";"
}

SetCookie('name', 'john', '3');

显然,这是行不通的。

Javascript Date对象使您可以真正轻松地操纵它存储在其中的日期。

获取明天的Date对象所需要做的就是...

var date = new Date();
date.setDate(date.getDate() + 1);
function SetCookie(name, value, exp) {
var now = new Date();
now.setTime(now.getTime()+(exp*24*60*60*1000));
document.cookie= name + "=" + value+ "; expires=" + now.toGMTString() + ";"
}

SetCookie('name', 'john', '3');

编辑它以exp为因数,它是no。 天。

另一种思考方式是回到基本的“自纪元以来的毫秒”表示形式:

var date = new Date()
date.setTime(date.getTime() + 24 * 60 * 60 * 1000)

或具有两个单独的变量:

var now = new Date()
var expiry = new Date(now.getTime() + 24 * 60 * 60 * 1000)

或内联:

var expiry = new Date(new Date().getTime() + 24 * 60 * 60 * 1000)

请注意,这将为您提供从现在24小时之后的日期。 不是同时作为“同一本地时间明天”这可能是23或25小时(或者即使它在2011年的月在萨摩亚不存在)。 就我个人而言,我更喜欢“固定时间长度”的良好稳定方法,但使用YMMV。

显然,要使到期天数不同,只需将24 * 60 * 60 * 1000常数(这是一天中的毫秒数)乘以所需的天数即可。

暂无
暂无

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

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