Javascript C#UTC时间(毫秒)

Javascript C#UTC时间(毫秒),javascript,c#,datetime,Javascript,C#,Datetime,在C#中,我希望将UTC(+00:00)时间设置为毫秒。因此,我可以在Javascript中使用偏移量(如下所示)。我尝试过几件事,但都没有做到 new Date(1528204115692 - (new Date().getTimezoneOffset() * 60000)).toString() 下面的代码根据我的时区给出毫秒 ((DateTimeOffset)DateTime.UtcNow).ToUnixTimeMilliseconds() 我想保持UTC时间毫秒,以db为单位,以便根

在C#中,我希望将UTC(+00:00)时间设置为毫秒。因此,我可以在Javascript中使用偏移量(如下所示)。我尝试过几件事,但都没有做到

new Date(1528204115692 - (new Date().getTimezoneOffset() * 60000)).toString()
下面的代码根据我的时区给出毫秒

((DateTimeOffset)DateTime.UtcNow).ToUnixTimeMilliseconds()
我想保持UTC时间毫秒,以db为单位,以便根据用户浏览器区域显示日期时间

例如:现在+03:00区域的时间是2018年5月6日16:12:20.568

我希望以毫秒为单位保留UTC区域时间。(大纪元时间00:00)

你能帮忙吗

谢谢你

你的密码是正确的

发件人:

新日期(价值)

价值观

< P>整数值,表示从1970年1月1日开始的毫秒数,0:00时UTC,忽略闰秒(Unix EngCH;但考虑到大多数UNIX时间戳函数以秒计)。 因此,您只需要:

var date = new Date(1528204115692);
其中,
1528204115692
是您从C#代码中获得的值

Javascript日期在内部以毫秒为单位(它只是一个数字),并且“开始”时间为1970年1月1日00.00(即“时间”0)

因此:

像这样使用它:

long ms = MillisecondsFrom01Jan1970(DateTime.UtcNow);

这将返回在
DateTime.UtcNow
(Utc时间中的“现在”)和1970年1月1日之间传递的毫秒数。

下面的代码在用户浏览器上的不同时区表现不同

var date = new Date(1528204115692);

您可以通过更改计算机时区,以相同的数字(毫秒)对其进行测试。此代码在更改时区时显示不同的日期时间。

Javascript使用从1970/1/1开始的毫秒。更复杂一点。你是在找DateTime.UtcNow吗?@Jeremythonpson如果他写了一些比赛的话,这是一个合理的问题。他是想要取整
DateTime.UtcNow
,还是想要
DateTime.UtcNow-新的DateTime(1970,1,1)
(他说的是Javascript),或者他想要???而且,他没有表现出任何试图实现这一点的企图,是的。不应减去任何偏移量。您从C#获得的值是UTC,JavaScript中的
Date
构造函数以UTC为单位获取其值。Unix时间戳总是以UTC为单位。让我问一下,您的JS代码在俄罗斯或英国给出了相同的结果<代码>风险值日期=新日期(1528204115692)这些C代码也给出了相同的结果,是不是错了<代码>((DateTimeOffset)DateTime.Now).TounixTimeMillimes()
((DateTimeOffset)DateTime.UtcNow.tounixtimemissions()
@barisusanmaz
新日期(1528204115692)。根据本地时区的不同,toString()
将以不同的方式打印,但在内部是相同的。例如,在意大利,它打印:
2018年6月5日星期二15:08:35 GMT+0200(ora legale Europa occidentale)
。该方法可能是对
DateTimeKind
进行补偿,例如
DateTime.Now.Kind
,它保存
DateTime
的类型(如果是本地或utc)。
var date = new Date(1528204115692);