Javascript Firefox使用new Date()定义日期时出错。getTime();
我正在定义一个变量data.EndTimeUTC,其值为“2015-10-09T18:15:00” 使用Javascript,我将使用Javascript Firefox使用new Date()定义日期时出错。getTime();,javascript,jquery,date,utc,Javascript,Jquery,Date,Utc,我正在定义一个变量data.EndTimeUTC,其值为“2015-10-09T18:15:00” 使用Javascript,我将使用 var liveTime = new Date(data.EndTimeUTC).getTime(); 在所有浏览器中,它都给出了正确的答案;1444414500000但无论出于什么原因,Firefox提供了144442530000,这正好是3小时的休息时间 知道那里发生了什么吗?我不知所措。尝试使用: var liveTime=Date.UTC(2015,9
var liveTime = new Date(data.EndTimeUTC).getTime();
在所有浏览器中,它都给出了正确的答案;1444414500000但无论出于什么原因,Firefox提供了144442530000,这正好是3小时的休息时间
知道那里发生了什么吗?我不知所措。尝试使用:
var liveTime=Date.UTC(2015,9,9,18,15,0)
对于您的情况:
var fixedUTC = data.EndTimeUTC + "Z";
var liveTime = Date.parse(fixedUTC);
将
T
替换为'
,将-
替换为/
,这使得新字符串适用于不同的浏览器。
经测试,以下代码适用于Chrome和Firefox:
var date1='2015-10-09T18:15:00';
date1=date1.替换('T','');
var time=newdate(date1.replace(/-/g,“/”).getTime();
警报(时间)代码>时区很可能要了你的命。这就是我想知道的——除了我从服务器得到的时间是格林尼治标准时间之外——它应该独立于时区运行——这在所有浏览器中都是如此,除了Firefox。Firefox是否会试图解释我们与格林尼治标准时间的3小时偏差?它在浏览器中绝对不是独立的。当你创建时间时,它是基于浏览器认为它所在的时区。好吧,从技术上来说,这是可行的。我怎样才能从“2015-10-09T18:15:00”到“2015,9,9,18,15,0”?我肯定还有更优雅的解决方案,但这种蛮力对我有效。我只希望javascript和.NET有一天能在日期上玩得很好;铬很好。我不明白。试试var fixedUTC=data.EndTimeUTC+'Z'代码>取而代之。