在调用getVarDate之前,是否需要将JavaScript日期转换为UTC?

时间:2011-03-08 22:55:08

标签: javascript internet-explorer activex

我正在使用Internet Explorer中的ActiveX控件,需要将日期传递给以日期为参数的ActiveX方法。这些方法期望日期类型为VT_DATE,我可以通过在Date对象上使用JScript getVarDate 方法生成VT_DATE值。

在调用 getVarDate之前,是否需要先将JavaScript日期转换为UTC?

我认为答案是,但我不是100%肯定而且不知道原因。

示例JavaScript代码,用于说明我在说什么:

var myDate = new Date(); // Gives me a JavaScript Date object.
console.log(myDate.toString()); // Outputs a string representing the date in the local time zone.
console.log(myDate.toUTCString()); // Outputs a string representing the date in UTC.

var myVT_DATE = myDate.getVarDate();
myActiveXControl.someMethodWantingVT_DATE(myVT_DATE);

1 个答案:

答案 0 :(得分:1)

如果您的网站有多个机会被用于多个时区,我建议您使用toUTCString()。默认情况下,每个浏览器都会返回本地日期/时间(如您所见)。这可能看起来不是什么大不了...

你深入到这个项目中,突然之间非常重要,你面临重写。

......或更糟......

您的网站已存在数月,您现在有一些需要(例如报告)需要这些日期,并且您意识到您不知道每个日期的创建时区。