我现在一直在与此斗争.我正在尝试将纪元转换为日期对象.这个时代以UTC的形式发送给我.每当你通过new Date()一个时代,它就会认为它是本地的时代.我尝试创建一个UTC对象,然后使用setTime()它调整到适当的纪元,但唯一有用的方法是toUTCString()和字符串不能帮助我.如果我将该字符串传递给新的日期,它应该注意到它是UTC,但事实并非如此.
new Date( new Date().toUTCString() ).toLocaleString()
Run Code Online (Sandbox Code Playgroud)
我的下一次尝试是尝试获取当地当前时期和UTC当前时期之间的差异,但我也无法得到它.
new Date( new Date().toUTCString() ).getTime() - new Date().getTime()
Run Code Online (Sandbox Code Playgroud)
它只给了我很小的差异,低于1000,这是毫秒.
有什么建议?
这是我需要的一些JS代码:
var secDiff = Math.abs(Math.round((utc_date-this.premiere_date)/1000));
this.years = this.calculateUnit(secDiff,(86400*365));
this.days = this.calculateUnit(secDiff-(this.years*(86400*365)),86400);
this.hours = this.calculateUnit((secDiff-(this.years*(86400*365))-(this.days*86400)),3600);
this.minutes = this.calculateUnit((secDiff-(this.years*(86400*365))-(this.days*86400)-(this.hours*3600)),60);
this.seconds = this.calculateUnit((secDiff-(this.years*(86400*365))-(this.days*86400)-(this.hours*3600)-(this.minutes*60)),1);
Run Code Online (Sandbox Code Playgroud)
我想在之前获得日期时间,但是如果正在使用DST,则日期将关闭1小时.我不知道如何检查DST是否正在使用中.
我如何知道夏令时的开始和结束时间?