- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
Javascript 的 Date()
对象让我发疯。我正在尝试获取当前的 UTC 日期 (mm/dd/yyyy
)。我需要世界上任何地方的日期都相同。因此,为此,我使用了 UTC 方法,例如 (new Date()).getUTCDate())
方法。然而最近,当用户投诉时,我发现返回的值在世界各地都不一样。
我需要一种明确的方法来根据通用时间获取当前日期(而不是过去的日期)。
(new Date()).getTime()
对我不起作用,因为它以毫秒为单位返回。
我的代码:
function getToday() {
var today = new Date();
var dd = today.getUTCDate();
var mm = today.getUTCMonth() + 1; //January is 0!
var yyyy = today.getUTCFullYear();
if (dd < 10) {
dd = '0' + dd
}
if (mm < 10) {
mm = '0' + mm
}
today = mm + '/' + dd + '/' + yyyy
return today;
}
console.log(getToday());
编辑:
我联系了该用户并告诉他基本上执行(new Date()).getUTCDate())
。他休息了一天(正确答案是 27)
此外,他的时区偏移量为 180
他在 Windows 计算机上使用 Chrome(我不知道是什么版本)
编辑2:
我刚刚做了一些数学计算,发现了一些奇怪的东西。
我的用户说他在每天中午 12:00 换日时都会遇到问题。他在晚上 9:53 告诉我他在我的时间里遇到了问题。知道他的时区偏移量为 180 分钟,而我的时区偏移量为 240 分钟,我可以通过执行 myTime + offsetDifference
来计算他当时的时间。然而 (((9*60 + 53) + (240 - 180))/60
) 大约等于晚上 11 点。因此,他的 PC 时间必须倒退 1 小时。
他可能手动设置了时间,但时区错误。
最佳答案
显然,我的用户没有设置他的时区,而只是设置了时钟。如果是这样,正如 Jonathan Gray 指出的那样,即使时间在本地检查,UTC 时间也将是错误的。他已经修复了时区并且成功了。
此外,正如 Phil 指出的那样,如果想要任何可靠的通用标准化时间,就必须使用时间始终正确的可信后端。为此,我还找到了一个名为 World Clock API 的网站。 。但是,正如我注意到的,为了获得可靠的服务并保证只要您的站点启动它就会启动,您必须将其集成到您的服务器中。一个简单的方法是使用 PHP 的 time() 方法,并计算相对于客户端时间的偏移量。
关于javascript - Date.getUTCDate() 在不同时区返回不同结果 - Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52031772/
我面临着非常奇怪的问题,请看下面的两个例子。 我的开发环境时区:GMT+0500 当我使用以下功能时: var d = new Date("Tue Mar 18 2014 00:00:00 GMT+0
为什么我们应该使用 GETUTCDATE() 函数而不是 getdate() 或反之亦然? 两者的目的是什么?请帮我举个例子。 最佳答案 GETUTCDATE()表示当前 UTC 时间(通用时间坐标或
这样的代码 var date = new Date("2012/09/04"); console.log(date.getUTCDate()); //returns 3 有人能告诉我如何根据像 yyy
我可以使用 Entity Framework 中的 SQL 函数 getutcdate() 在保存实体对象时在数据库中设置日期字段吗? 最佳答案 是的,你可以做到这一点。 CLR函数DateTime.
我有代码(19 是日期,6 是月份) var dateObj = new Date("19.6.2018"); var month = dateObj.getUTCMonth() + 1; //mon
Javascript 的 Date() 对象让我发疯。我正在尝试获取当前的 UTC 日期 (mm/dd/yyyy)。我需要世界上任何地方的日期都相同。因此,为此,我使用了 UTC 方法,例如 (new
我有一个触发器,每当输入值时,它都会自动将给定条目的 CreationDate 和 ModifiedDate 设置为当前 UTC 时间。 (此后,CreationDate 将保持不变,而 Modifi
我们的生产服务器存在 C# DateTime.UtcNow 与 SQL Server 的 GETUTCDATE() 大约 27 秒不一致的问题: Console.WriteLine("C# UTC D
使用 Microsoft SQL Server 我希望列默认具有当前 UTC 日期和时间。当插入一行并且没有为该列指定值时,它应该默认为服务器上的 UTC 日期。 我创建表: CREATE TABLE
简单的问题:为什么上面的语句有效,但下面的语句失败了 'Incorrect syntax near (' 代码: USE [Research] GO DECLARE @d datetime SELEC
我有一个存储过程多次使用 GETUTCDATE() 函数。这是一个非常具体的业务存储过程,因此在这里显示它可能没有多大意义。话虽如此,了解存储过程仅在当前年份被调用可能会有所帮助。这是一个人为的示例,
我需要在 UTC 中创建时间戳。这是我正在尝试的,但是尽管使用了 setUTCDate 和 getUTCDate 方法,警报弹出窗口仍以 GMT+2 显示日期。为什么会这样? // Get N
这个问题在这里已经有了答案: Fastest postgreSQL equivalent to MySQL UTC_DATE() (getting UTC date)? (1 个回答) 关闭 7 年
在 javascript 中,通过使用方法 getUTCDate() 出现错误。 使用日期选择器 a 选择了日期 2013/04/01,但 getUTCDate() 返回同年同月的 31。通过使用方法
我正在使用 MsSQL 提供的 GetUTCDate() 函数将 DateTime 插入到 MsSQL 中。 我需要在 C# 中转换时间以将其显示为 Unix/MySQL 整数,以便最终可以使用 PH
考虑一个具有不可为空列的 SQL Server CE 4 表:FooDate .目标是将当前的 UTC 日期时间作为默认值。 The function is not recognized by SQL
我是一名优秀的程序员,十分优秀!