如何将javascript日期时区偏移值转换为持续时间字符串格式?
在javascript中,我希望以类似如何将javascript日期时区偏移值转换为持续时间字符串格式?,javascript,timezone,Javascript,Timezone,在javascript中,我希望以类似“-04:00”的格式获取时区值。但是我想从新日期()开始。getTimezoneOffset()。到目前为止,我有这个 function getTimeZoneOffset() { //var t = new Date().toString().match(/[-\+]\d{4}/)[0]; //return t.substring(0,3) + ":" + t.substr(3); var g = new Da
“-04:00”
的格式获取时区值。但是我想从新日期()开始。getTimezoneOffset()
。到目前为止,我有这个
function getTimeZoneOffset() {
//var t = new Date().toString().match(/[-\+]\d{4}/)[0];
//return t.substring(0,3) + ":" + t.substr(3);
var g = new Date().getTimezoneOffset() / -60;
if (g > -10 && g < 0) g = g.toString().replace("-", "-0");
else if (g === 0) g = "00";
else if (g > 0 && g < 10) g = "+0" + g;
g += ":00";
return g;
}
函数getTimeZoneOffset(){
//var t=new Date().toString().match(/[-\+]\d{4}/)[0];
//返回t.substring(0,3)+:“+t.substring(3);
var g=新日期().getTimezoneOffset()/-60;
如果(g>-10&&g<0)g=g.toString()。替换(“-”,“-0”);
如果(g==0)g=“00”;
如果(g>0&&g<10)g=“+0”+g;
g+=“:00”;
返回g;
}
但当处理分数或时区时,它就不起作用了,就像
xx:30
。如何改进这一点?首先,我建议更改代码,使其更具可读性
var total_minutes=new Date().getTimezoneOffset()/-1;
然后,你可以通过增加商来计算小时数,就像你已经做的那样
var小时=(总分钟/60);
//否定的
我们需要计算小时数的剩余部分,因此我们添加:
var分钟=(-1*总分钟)%60
然后使用上面的方法格式化它,您需要修改它。如果你需要帮助,请告诉我。
希望这有帮助 希望这就是你想要的:
函数格式OffsetOHmm(OffsetMins){
var负值=偏移分钟