Rob*_*esi 5 javascript timezone date datepicker
在js中是否可以创建一个不受时区影响的日期对象?例如我想设置年份“2015”,月份“03”和日期“31”。
var ex = new Date(2015,3,31);
Run Code Online (Sandbox Code Playgroud)
如果我“打印”这个变量现在它看起来像这样:
Fri May 01 2015 00:00:00 GMT+0200 (ora legale Europa occidentale)
Run Code Online (Sandbox Code Playgroud)
它更改为第二天。有可能避免这种情况吗?如何创建在每个时区始终相同的 Date 对象?
我需要尽快将此行为包含在应用程序中,并且我不能仅使用字符串,因为我们必须使用适用于日期对象的日期选择器插件(Bootstrap)。
提前致谢
是的!如果您使用Date.UTC函数创建所有 Date 对象,那么它们都将相对于标准 UTC 时区,即使用户的浏览器设置了不同的时区。
例如:
var ex = new Date( Date.UTC( 2015, 3, 31 ) );
Run Code Online (Sandbox Code Playgroud)
这将为所有浏览器创建一个 Date 对象,3/31/2015 UTC并且该对象在所有浏览器中保持一致,无论其默认时区如何。
在内部,里面的日期ex仍然会按照用户的本地时区进行转换。因此,如果您从中读取值(例如日期),它将相对于用户的浏览器时间。
因此,如果您需要读取 UTC 时间,您可以执行以下操作:
ex.getUTCYear(); // 2015
ex.getUTCMonth(); // 3
ex.getUTCDate(); // 31
Run Code Online (Sandbox Code Playgroud)
这将为您提供 UTC 时间的值。
| 归档时间: |
|
| 查看次数: |
13113 次 |
| 最近记录: |