js中计算两日期时间差

/** 
 * 计算两日期时间差 
 * @param   interval 计算类型:D是按照天、H是按照小时、M是按照分钟、S是按照秒、T是按照毫秒 
 * @param  date1 起始日期  格式为年月格式 为2012-06-20 
 * @param  date2 结束日期 
 * @return  
 */  
function countTimeLength(interval, date1, date2) {  
    var objInterval = {'D' : 1000 * 60 * 60 * 24, 'H' : 1000 * 60 * 60, 'M' : 1000 * 60, 'S' : 1000, 'T' : 1};  
    interval = interval.toUpperCase();  
    var dt1 = Date.parse(date1.replace(/-/g, "/"));  
    var dt2 = Date.parse(date2.replace(/-/g, "/"));  
    try{  
        return ((dt2 - dt1) / objInterval[interval]).toFixed(2);//保留两位小数点  
    }catch (e){  
        return e.message;  
    }  
}  


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用JavaScript内置的Date对象来计算时间差。假设有个时间戳分别为time1和time2,可以按照以下步骤计算它们的时间差: 1. 将时间戳转换为Date对象: ``` const date1 = new Date(time1); const date2 = new Date(time2); ``` 2. 计算时间差: ``` const diff = date2.getTime() - date1.getTime(); ``` getTime()方法返回一个时间戳,表示从1970年1月100:00:00 UTC开始到这个Date对象表示的时间之间的毫秒数。 3. 将时间差转换为所需的格式(例如,秒、分钟、小时、天等): ``` const secondsDiff = Math.floor(diff / 1000); const minutesDiff = Math.floor(diff / (1000 * 60)); const hoursDiff = Math.floor(diff / (1000 * 60 * 60)); const daysDiff = Math.floor(diff / (1000 * 60 * 60 * 24)); ``` 这里使用Math.floor()方法将结果向下取整,以确保得到整数值。 完整的代码示例如下: ``` const time1 = 1631308800000; // 2021年9月1100:00:00 const time2 = 1631395200000; // 2021年9月1200:00:00 const date1 = new Date(time1); const date2 = new Date(time2); const diff = date2.getTime() - date1.getTime(); const secondsDiff = Math.floor(diff / 1000); const minutesDiff = Math.floor(diff / (1000 * 60)); const hoursDiff = Math.floor(diff / (1000 * 60 * 60)); const daysDiff = Math.floor(diff / (1000 * 60 * 60 * 24)); console.log(`时间差为 ${secondsDiff} 秒`); console.log(`时间差为 ${minutesDiff} 分钟`); console.log(`时间差为 ${hoursDiff} 小时`); console.log(`时间差为 ${daysDiff} 天`); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值