获取两个时间字符串相差的秒数

这里说的时间字符串格式是:

"2021-01-15T14:44:40.001+08:00" 或者 "2021-01-15 14:44:40" 

一、原生js

 function diffSecond(start, end) {
  const startTime = new Date(start);
  const endTime = new Date(end);
  const second_time = Math.abs(startTime - endTime) / 1000; // 得到相差的秒数
  return second_time;
}
diffSecond("2021-01-15T14:44:40.263+08:00","2021-01-15T14:44:00.001+08:00") // 40.262 
diffSecond('2021-01-15 15:26:30','2021-01-15 15:26:45'); // 15
// 获取相差的秒数,两个时间字符串相差的秒数,如 "2021-01-15T14:44:40.263+08:00" 和 "2021-01-15T14:44:00.001+08:00",相差 40秒

二、用dayjs插件

export function diffSecondByDayjs(start, end) {
  const date1 = dayjs(start);
  const date2 = dayjs(end);
  let diffTime = Math.abs(date1.diff(date2, 'second')); //获取两个时间对象相差的秒数,取绝对值。second是秒,传入day是相差的天数
  return diffTime;
}
diffSecondByDayjs('2021-01-15T14:44:40.263+08:00','2021-01-15T14:44:00.001+08:00'); // 40 这里得到的是整数
diffSecondByDayjs('2021-01-15 15:26:30','2021-01-15 15:26:45'); // 15

将得到的秒数转换为时间差字符串,天时分秒,请参考:https://blog.csdn.net/ddx2019/article/details/105771645

关于dayjs的更多用法, 可参考博主往期文章https://blog.csdn.net/ddx2019/article/details/102535557

更多信息参考 https://github.com/iamkun/dayjs

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值