Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 获取UTC时间信息(需要人员测试我的代码片段)_Javascript_Date_Datetime - Fatal编程技术网

Javascript 获取UTC时间信息(需要人员测试我的代码片段)

Javascript 获取UTC时间信息(需要人员测试我的代码片段),javascript,date,datetime,Javascript,Date,Datetime,我创建了一个小片段,它应该根据用户的计算机设置返回用户所在国家的UTC时间值。但是,如果您能够测试该代码片段,并在它能够为您的国家显示正确的UTC值时给我一些反馈,我将非常感激。如有任何反馈,将不胜感激。先谢谢你 PS:我在研究如何解决这个问题时从维基百科学到的是UTC不是一个时区,因此在一些国家冬季和夏季之间的1小时变化不会影响UTC值。但是,请注意UTC等于GMT(冬季时间),因此对于撰写本文时使用夏季时间的国家,必须提取一个小时以获得GMT(冬季时间),理论上必须等于UTC值 var c

我创建了一个小片段,它应该根据用户的计算机设置返回用户所在国家的UTC时间值。但是,如果您能够测试该代码片段,并在它能够为您的国家显示正确的UTC值时给我一些反馈,我将非常感激。如有任何反馈,将不胜感激。先谢谢你

PS:我在研究如何解决这个问题时从维基百科学到的是UTC不是一个时区,因此在一些国家冬季和夏季之间的1小时变化不会影响UTC值。但是,请注意UTC等于GMT(冬季时间),因此对于撰写本文时使用夏季时间的国家,必须提取一个小时以获得GMT(冬季时间),理论上必须等于UTC值

var currentDate=新日期();
var fetchYear=currentDate.getFullYear();
var fetchMonth=currentDate.getMonth();
var fetchDay=currentDate.getDate();
var fetchHour=currentDate.getHours();
var fetchMinutes=currentDate.getMinutes();
var fetchSeconds=currentDate.getSeconds();
var fetchmillizes=currentDate.getmillizes();
var referenceDate=新日期(fetchYear、0、fetchDay、fetchHour、fetchMinutes、fetchSeconds、fetchmillizes)
var currentDateToString=currentDate.toString().match(/[+|-].{4}/).toString();
var referenceDateToString=referenceDate.toString().match(/[+|-].{4}/).toString();
if(currentDateToString==referenceDateToString){
document.getElementById(“utcValue”).innerHTML=“输出:UTC”+currentDateToString;
}否则{
document.getElementById(“utcValue”).innerHTML=“输出:UTC”+referenceDateToString;
}

我在日本,这是输出:
UTC+0900
@programandoconro感谢您的反馈。似乎它得到了适合你们国家的UTC。因为这太简单了吗?@RobG,这也出现在我的脑海中,但很快就被划掉了,因为如果我们以印度为例,他们的UTC时间是+06:30,使用getTimezoneOffset很可能返回-390,必须除以60才能得到小时数,因此我们得到的是6.5而不是6:30。新西兰(查塔姆群岛)也是如此,其UTC时间为12:45,而不是12:45。解决方法是添加以下代码var getMinutes=-390;var calcHours=(getMinutes/-60);var fixHours=数学楼层(calcHours)var calcMinutes=(calcHours-fixHours)*60;var fixMinutes=数学轮(calcMinutes);日志(fixHours+“:”+fixMinutes);但这样我们比上面的代码做更多的计算。你认为getTimezoneOffset会比我的方法给我们更少的错误空间吗?