js计算两个日期时间相差的小时数(时分秒)

549 阅读1分钟
function getHour(s1, s2) {
    var reDate = /\d{4}-\d{1,2}-\d{1,2} /;
    s1 = new Date((reDate.test(s1) ? s1 : '2018-1-1 ' + s1).replace(/-/g, '/'));
    s2 = new Date((reDate.test(s2) ? s2 : '2018-1-1 ' + s2).replace(/-/g, '/'));
    var ms = s2.getTime() - s1.getTime();
    if (ms < 0) return 0;
    return Math.floor(ms / 1000 / 60 / 60);  //小时
}
    //自己注意传递要么都带日期,要么都不带,否则计算出来的不对
    alert(getHour('2017-8-23 12:05:05', '2017-8-25 10:05:05'))
    alert(getHour('12:05:05', '10:05:05'))
    alert(getHour('10:05:05', '12:05:05'))

blog.csdn.net/fanyanjiang…

获取当前时间 并转格式

function getCurTime2() {
const dateTime = new Date()
const year = dateTime.getFullYear()
const month = dateTime.getMonth() + 1 const date = dateTime.getDate()
const hour = dateTime.getHours() 
const min = dateTime.getMinutes() 
const sec = dateTime.getSeconds()
const mm = dateTime.getMilliseconds() 
function fillUp(text) {
if (text < 10) { 
return '0' + text 
} 
return text }
return `${year}-${fillUp(month)}-${fillUp(date)} ${fillUp(hour)}:${fillUp(min)}:${fillUp(sec)}` }

计算两个时间相差了多少秒

function gettimes(){ 
var newDate = new Date(); // 当前时间
var oldDate = new Date(sessionStorage.getItem('dragtime')); // 存储的旧的时间
var diffDate = newDate - oldDate; //计算时间差毫秒 
var days = parseInt(diffDate / (1000 * 60 * 60 * 24)); //时间差天数
var hours = parseInt((diffDate % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)); //时间差小时
var minutes = parseInt((diffDate % (1000 * 60 * 60)) / (1000 * 60)); //时间差分
var seconds = (diffDate % (1000 * 60)) / 1000; //时间差秒
[console]().log(newDate,'newDate---',oldDate,'oldDate-----',diffDate,'diffDate---',days,minutes,seconds); 
console.log("秒:"+ parseInt(days * 24 + hours * 60 + minutes * 60 + seconds))
return parseInt(days * 24 + hours * 60 + minutes * 60 + seconds) } //所有的加在一起就是一共相差多少秒