关于日期和cookie的奇怪问题

时间:2012-06-25 12:48:59

标签: javascript

我写这段代码:

var Ec = new Date ();
Ec.setTime(Ec.getTime() + (365 * 24 * 3600 * 1000));
var Ed = new Date ();
Ed.setTime(Ed.getTime() + (24 * 3600 * 1000));
document.cookie="visit=" + Ed.toGMTString() + ";expires=" + Ec.toGMTString();

var Ea = new Date ();
Ea.setTime(Ea.getTime() + (24 * 3600 * 1000));
alert(Ea.toGMTString());

在cookie中存储了这个:

06/26/2012 8:46 AM

并在警告中显示:

06/26/2012 12:46 AM

我国目前的时间是:

 06/25/2012 14:46

为什么? 我想简单地在cookie中存储当前时间+ 24小时。

1 个答案:

答案 0 :(得分:1)

我假设你不在GMT时区。

当您执行Ed.toGMTString()时,您将时间转换为GMT,这就是它与当地时间不同的原因。

Ed.toLocaleTimeString()Ed.toISOString()可能更接近标记。