JavaScript - 我如何更改字符串的时间
JavaScript - How do i change time of string
我有过这样的时光:
12:30PM
我想将它更改为一个小时的偏移量(例如:-5
),另外,如果时间不到午夜,它应该显示前一个日期,我可以做到;但其余的我不能。
有没有人知道怎么做,因为我很困惑。
考虑使用 moment.js。
moment().format();
returns当前date-time。例如:"2017-01-28T14:52:59+02:00"
moment().format('h:mm A');
returns 当前时间。例如:"2:54 PM"
moment().add(5, 'hours').format('h:mm A');
returns 当前时间加上 5 小时。例如:"7:54 PM"
time="12:35PM";
仅获取小时 + 分钟
timearr=time.replace("PM","").replace("AM","").replace(" Yesterday","").replace(" Tomorrow","").split(":");
小时减五
timearr[0]-=5;
检查是否是昨天
if(timearr[0]<0){
timearr.push(" Yesterday");
timearr[0]=timearr[0]%24;
}
检查明天是否:
if(timearr[0]>24){
timearr.push(" Tomorrow");
timearr=timearr%24;
}
检查前子午线或Post子午线
if(timearr[0]>12){
timearr[1]+="PM";
timearr[0]-=12;
}else{
timearr[1]+="AM";
}
再次创建时间串:
timearr[0]+=":";
time=timearr.join("");
我有过这样的时光:
12:30PM
我想将它更改为一个小时的偏移量(例如:-5
),另外,如果时间不到午夜,它应该显示前一个日期,我可以做到;但其余的我不能。
有没有人知道怎么做,因为我很困惑。
考虑使用 moment.js。
moment().format();
returns当前date-time。例如:"2017-01-28T14:52:59+02:00"
moment().format('h:mm A');
returns 当前时间。例如:"2:54 PM"
moment().add(5, 'hours').format('h:mm A');
returns 当前时间加上 5 小时。例如:"7:54 PM"
time="12:35PM";
仅获取小时 + 分钟
timearr=time.replace("PM","").replace("AM","").replace(" Yesterday","").replace(" Tomorrow","").split(":");
小时减五
timearr[0]-=5;
检查是否是昨天
if(timearr[0]<0){
timearr.push(" Yesterday");
timearr[0]=timearr[0]%24;
}
检查明天是否:
if(timearr[0]>24){
timearr.push(" Tomorrow");
timearr=timearr%24;
}
检查前子午线或Post子午线
if(timearr[0]>12){
timearr[1]+="PM";
timearr[0]-=12;
}else{
timearr[1]+="AM";
}
再次创建时间串:
timearr[0]+=":";
time=timearr.join("");