Javascript 如何将UTC小时(HH)更改为本地时间(HH)
我们正在访问允许我们安排日期/时间的API。我们需要检查预定的事情,这样我们就不会在同一个时间重复预订。API返回的时间在军事上仅为HH。但是,它使用UTC HH。因此,如果我们在下午1点安排一些事情,它会在18点回来 我正在尝试使用Moment.js将UTC 18改回CST(本地时间)。我失败得很惨 在下面的例子中,我从API得到了18,下面的函数试图转到本地时间(恰巧是CST)。但函数只是将其转换或保留为18。帮忙Javascript 如何将UTC小时(HH)更改为本地时间(HH),javascript,momentjs,Javascript,Momentjs,我们正在访问允许我们安排日期/时间的API。我们需要检查预定的事情,这样我们就不会在同一个时间重复预订。API返回的时间在军事上仅为HH。但是,它使用UTC HH。因此,如果我们在下午1点安排一些事情,它会在18点回来 我正在尝试使用Moment.js将UTC 18改回CST(本地时间)。我失败得很惨 在下面的例子中,我从API得到了18,下面的函数试图转到本地时间(恰巧是CST)。但函数只是将其转换或保留为18。帮忙 function changeTakenHoursFromUTC (take
function changeTakenHoursFromUTC (taken) {
if(taken) {
for (var i = 0, len = taken.length; i < len; i++) {
// construct a moment object with UTC-based input
var utchour = taken[i].send_hour + ":00:00";
console.log( "Hour before change " + utchour);
var h = moment.utc(utchour);
// convert using the TZDB identifier for US Central time
h.tz('America/Chicago');
h.local();
console.log( "Hour before change " + h._i );
var s = h.format("HH");
taken[i].send_hour = s._i;
console.log( "Taken hour back in taken is " + taken[i].send_hour );
count += 1;
if(i == len-1 && count > 0) {
//
return;
}
} // end for
} // end IF
} // end changeTakenHoursFromUTC
函数更改takenhoursfromutc(take){
如果(采取){
for(变量i=0,len=take.length;i0){
//
返回;
}
}//结束
}//如果结束,则结束
}//结束更改从UTC开始
您的矩.utc(utchour,“HH”)
我创建此函数是为了提供某种帮助,例如:
function changeTakenHoursFromUTC (taken) {
// construct a moment object with UTC-based input
console.log( "Hour before change " + taken);
var h = moment.utc(taken, "HH");
console.log(h.format("HH"));
h.local();
console.log( "Hour after change " + h.format("HH"));
}
changeTakenHoursFromUTC(18);
如果要更改时区(本地时区除外),请尝试
moment().utcOffset()代码>