我有这样的时间:
12:30PM
我希望将它改变一个小时的偏移量(例如:-5
),再加上如果时间少于午夜它应该显示上一个日期,我可以这样做;但其余的我不能。
有没有人知道怎么做,因为我很困惑。
答案 0 :(得分:2)
考虑使用moment.js。
moment().format();
返回当前日期时间。例如:"2017-01-28T14:52:59+02:00"
moment().format('h:mm A');
返回当前时间。例如:"2:54 PM"
moment().add(5, 'hours').format('h:mm A');
返回当前时间加上5小时。例如:"7:54 PM"
答案 1 :(得分:1)
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;
}
检查Ante Meridian或Post Meridian
if(timearr[0]>12){
timearr[1]+="PM";
timearr[0]-=12;
}else{
timearr[1]+="AM";
}
再次创建Timestring:
timearr[0]+=":";
time=timearr.join("");