.net服务器端中的Java中的Date()。getTimezoneOffset()与TimeZoneInfo.Local.GetUtcOffset(DateTime.UtcNow).TotalMinutes

时间:2019-01-22 16:18:04

标签: javascript .net timezone-offset

我的应用程序中使用了javascript函数

Date().getTimezoneOffset();

我需要服务器端功能来替换相同的功能。我正在使用

TimeZoneInfo.Local.GetUtcOffset(DateTime.UtcNow).TotalMinutes;

除了-ve和+ ve值之外,两者之间是否还有其他区别?我可以使用此服务器端方法代替此javascript函数吗?

2 个答案:

答案 0 :(得分:1)

根据Mozilla开发人员文档的JavaScript状态,

  

getTimezoneOffset()方法返回时差,以   分钟,从当前语言环境(主机系统设置)到UTC。

.NET中 GetUtcOffset 的方法摘要注释描述了

  

摘要:

     

计算特定日期和时间的时区中的时间与协调世界时(UTC)之间的偏差或时差。

基本上,两者都几乎完成相同的工作,除了.Net返回 TimeSpan 对象,而JavaScript只是一个数字(以分钟为单位的偏移量)

实际上,TimeSpan对象中的TotalMinutes属性值返回的值与JavaScript的值相同

答案 1 :(得分:0)

除了符号(+/-)之外,它们都是相同的,但请记住:

  • 它们都返回 current 本地偏移量。同一时区中其他某个时间点的偏移量可能不同。请参见the timezone tag wiki中的“时区!=偏移”。

  • “本地”是指代码执行所在的本地。因此,在Web应用程序中,服务器端代码使用服务器的时区设置。它不知道您用户的时区。