比较Javascript和时区中的日期

时间:2014-10-23 15:05:25

标签: javascript date datetime timezone

使用<,>,=,> =和< =比较Javascript中的日期时,比较中以何种方式使用时区?我希望时区被忽略。

1 个答案:

答案 0 :(得分:1)

当您将时间戳转换为JavaScript Date对象时,时间戳的字符串表示的时区部分会被考虑在内:内部值是一个简单的标量,标准化为UTC。因此,在比较Date个对象时,不需要特殊的时区处理:

var d1 = new Date(Date.parse("Mon, 25 Dec 1995 13:30:00 +0430"));
var d2 = new Date(Date.parse("Mon, 25 Dec 1995 13:30:00 GMT"));
print("d1:", d1);
print("d2:", d2);
if (d1<d2) {
    print("d1 is less then d2");
} else if (d1>d2) {
    print("d1 is greater then d2");
} else {
    print("d1 equals to d2");
}

给出了这个输出:

d1: Mon Dec 25 1995 09:00:00 GMT+0000
d2: Mon Dec 25 1995 13:30:00 GMT+0000
d1 is less then d2

[见online demo]

如果你比较时间戳的字符串表示,你很可能会遇到麻烦。