我是jQuery的新手,我真的不知道该怎么做。我想得到12小时格式的结果,12小时格式的时间和24小时格式的时间之差。例如:给定时间"1:30:25 AM“并减去"00:32:20",则结果应该是"12:58:05 AM”。请帮我拿这个。
发布于 2015-05-18 02:53:30
导致24小时格式的
var dt = '1/1/2000 ';
var date = new Date(new Date(dt + '1:30:25 AM') - new Date(dt + '00:32:20'));
alert("24-hr format: " + date.toISOString().substr(11, 8));结果:00:58:05
产生12小时格式的。
function timeFormat12Hr(date) {
var hours = date.getUTCHours();
var minutes = date.getUTCMinutes();
var seconds = date.getUTCSeconds();
var ampm = hours >= 12 ? 'PM' : 'AM';
hours = hours % 12;
hours = hours ? hours : 12; // the hour '0' should be '12'
minutes = minutes < 10 ? '0' + minutes : minutes;
seconds = seconds < 10 ? '0' + seconds : seconds;
var strTime = hours + ':' + minutes + ':' + seconds + ' ' + ampm;
return strTime;
}
var dt = '1/1/2000 ';
var date = new Date(new Date(dt + '1:30:25 AM') - new Date(dt + '00:32:20'));
alert("12-hr format: " + timeFormat12Hr(date));结果:12:58:05 AM
注意:我使用string '1/1/2000 '来构造Date对象,但是它可能是任何日期,因为我们只对它的时间部分感兴趣。
有关演示,请参见这个JSFiddle。
发布于 2015-05-18 02:44:02
一些简单的javascript应该完成这项工作。一旦您有了日期对象,您就可以以任何您想要的格式输出它。
var year = 2015; var month = 5, var day = 18, var hours = 1; minutes = 30; seconds = 25;
var date = new Date(year, month, day, hours, minutes, seconds, milliseconds);
var new_format = (date->getHours()+1)+'-'+date->getMinutes();日期返回0-23,所以您必须添加+1 (这就是我倾向于支持moment.js的原因,如下所述)
date.asp (用于创建日期对象的其他方法)
否则,可能会给moment.js一个尝试,它是可怕的日期/时间计算。
http://momentjs.com/
https://stackoverflow.com/questions/30294150
复制相似问题