javascript Date()函数是否返回本地时间
Does the javascript Date() function return local time?
例如:
var date = new Date();
日期会相对于用户的本地时区吗?
是的,实际上它与用户自己的计算机时间相同。它不从服务器或任何地方获取信息,而是从用户自己的计算机获取信息。
"表达式new Date()以内部格式返回当前时间,作为一个对象,包含自1970年初以来以UTC计算的毫秒数。因此,时区问题不适用。如果将时间转换为字符串,则会变得非常重要。"
是的,new Date()表达式返回的时间不考虑时区问题,只有当它被转换为字符串时。
> d = new Date()
Thu Feb 07 2013 11:48:47 GMT-0200 (BRST)
我的时区是GMT-0200。
> d.toISOString().substr(0,19)
'2013-02-07T13:48:47'
正如我们所看到的,返回的时间不考虑时区。
内部考虑时区:
> d = new Date()
Thu Feb 07 2013 11:51:49 GMT-0200 (BRST)
> d = d - (d.getTimezoneOffset() * 60000)
1360237909163
> d = new Date(d)
Thu Feb 07 2013 09:51:49 GMT-0200 (BRST)
> d.toISOString().substr(0,19)
'2013-02-07T11:51:49'
现在时间调整到我的时区。
我在保存录音的摄像头监控软件中遇到了严重的问题。我的时区是GMT-0200,22:00后,录音文件被放在第二天的文件夹中。我使用new Date()表达式来获取保存录制的日期文件夹名称。
表达式new Date()
以内部格式返回当前时间,作为一个对象,包含自1970年初以来以UTC表示的毫秒数。因此,时区问题不适用。如果将时间转换为字符串,则它们会变得很重要。
在实践中,所获得的值当然是基于客户端计算机的时钟的近似值。它可能与提供相当准确时间的外部时间服务器同步,也可能不同步,但这仍然是一个"客户端时间"问题,与www服务器上的时间相反。
相关文章:
- 有没有更好的方法可以测量从Ajax调用返回数据所需的总时间
- 时刻.js时区值返回错误的时间戳
- PhoneGap API返回时间戳格式
- new Date返回NaN或从服务器日期()开始的错误时间
- 返回两个日期时间单元格之间的差值
- 从Google Maps API返回的jQuery格式时间
- 新日期在使用日期时间选取器时返回 NA 值
- 为返回的变量添加时间戳
- 为什么此 Google 日历 API 请求不返回开始时间等事件数据
- AJAX 发送和接收之间的时间返回负值
- Date 对象在尝试计算 IE8 中两个日期之间的时间时返回 NaN
- 本地日期转换为 UTC 纪元时间并在 JavaScript 中返回日期时不匹配
- Safari (Mac OS X Lion) 将错误的纪元时间值返回给 position.timestamp 调用
- 关闭模式对话框时,从模式对话框返回时间
- Javascript - 如何返回我居住的时间
- PHP 和 JavaScript/Jquery 返回不同的时间戳
- Phantom JS:第一个孩子返回正确结果的时间有一半
- pub历史API调用总是返回时间令牌
- ExtJS Forms >.getFieldValues()函数没有返回“时间字段”的任何值;xtype
- Instafeedjs moment.js返回时间之前