// 获取时间差 返回值格式:01天02小时30秒
export function caclulateDiffTime(start, end): string {
start = new Date(start).getTime();
end = new Date(end).getTime();
let staytimeGap = end - start;
if (staytimeGap < 0) {
staytimeGap = start - end;
}
if(isNaN(staytimeGap )) {
throw new Error('时间参数有误!');
}
// 计算
let stayDay = Math.floor(staytimeGap / (3600 * 1000 * 24));
let modHour = staytimeGap % (24 * 1000 * 3600);
let stayHour = Math.floor(modHour / (3600 * 1000));
let modMin = modHour % (3600 * 1000);
let stayMin = Math.floor(modMin / (60 * 1000));
let modSec = modMin % (60 * 1000);
let staySec = Math.floor(modSec / 1000); const timeArr = [
{
title: '天',
time: stayDay,
},
{
title: '小时',
time: stayHour,
},
{
title: '分钟',
time: stayMin,
},
{
title: '秒',
time: staySec,
},
];
return timeArr
.map((item) => {
// 补0
if (item.time < 10) {
item.time = '0' + item.time;
}
return item;
})
// 去除时间为0项
.filter((item) => item.time > 0)
.map((item) => item.time + item.title)
.join('');
}

js获取时间差,返回格式为01天02小时03秒的更多相关文章

  1. js 获取当前日期时间 格式为 yyyy-mm-dd hh:MM:ss

    ------------------------------------------------------------------------------------ js 获取当前日期时间 格式为 ...

  2. html中通过js获取接口JSON格式数据解析以及跨域问题

    前言:本人自学前端开发,一直想研究下js获取接口数据在html的实现,顺利地找到了获取数据的方法,但是有部分接口在调用中出现无法展示数据.经查,发现时跨域的问题,花费了一通时间,随笔记录下过程,以方便 ...

  3. C# 获取时间差(几天前,几小时前,几分钟前,几秒前)

    #region 获取时间差string GetTime(BsonString getTime) /// <summary> /// 获取时间差 /// </summary> / ...

  4. JS 获取JSON返回的时间值转换为通常格式展示

    var date = new Date(parseInt(数据源.slice(6)));   //获取到时间  年月日时分秒 var result = date.getFullYear() + '/' ...

  5. js 获取当前时间格式怎么转换?

    toLocaleDateString() 得到的时间是 yyyy年MM月dd日 HH:ss:mm 格式的,怎么转换成yyyy-MM-dd HH:ss:mm 在js里面 仅针对这个问题来说,不需要那么大 ...

  6. JS获取后台返回的JSON数据

    问题:通过$.get从后台获取了一段json串{"id":"1","name":"ww"},然后要拿到这里面的id和na ...

  7. js获取当前日期(年月日格式)

    function getNowFormatDate() { var date = new Date(); var seperator1 = "-"; var year = date ...

  8. js获取当前日期,格式为YYYY-MM-DD

    //获取当前时间,格式YYYY-MM-DD function getNowFormatDate() { var date = new Date(); var seperator1 = "-& ...

  9. js获取当前日期并格式yyy-MM-dd

    //格式化日期:yyyy-MM-dd function formatDate(date) { var myyear = date.getFullYear(); var mymonth = date.g ...

  10. js获取时间差值

    function GetTime(firstDate, secondDate) { // 1.对事件进行处理 var firsttime = Date.parse(firstDate + " ...

随机推荐

  1. 心电芯片ADS1292 KS1081 AD8232等的比较

    首先看ADS1292, 从品牌和信誉,TI出品,这个来说应该是相对好一点的,医疗级水准的信号.内置24位的ADC,,噪声和整体功能都很全面,放大倍数1-12倍.应用在穿戴场合的缺点是:这个芯片封装尺寸 ...

  2. ETL工具-KETTLE教程实例实战3----转换(输入、输出)

    ETL工具-KETTLE教程实例实战3----转换(输入.输出) 欢迎关注笔者的公众号: java大师, 每日推送java.kettle运维等领域干货文章,关注即免费无套路附送 100G 海量学习.面 ...

  3. 游戏引擎中的实时渲染和在V-Ray中渲染有什么区别 2022-11-25

    游戏引擎中的实时渲染和在V-Ray中渲染有什么区别,下面我们一起来分析一下,从2个方面来具体分析实时渲染和在V-Ray中渲染种的不一样的区别. 原理区别 VRay等渲染器原理上叫做离线渲染(Offli ...

  4. 开源一个教学型分库分表示例项目 shardingsphere-jdbc-demo

    在笔者心中,消息队列,缓存,分库分表是高并发解决方案三剑客. 分库分表之所以被广泛使用,因为工程相对简单,但分库分表并不仅仅是分片,还是需要考虑如何扩缩容(全量同步.增量同步.数据校验等). 因此笔者 ...

  5. 开发必会系列:JavaEE持久层框架对比与hibernate主键生成策略总结

    一.持久层框架对比 ORM框架:即对象关系映射.它把数据库表映射到pojo类,然后通过对类的操作来实现对数据库的增删改查,sql语句自动生成. 对于代码开发者来说,就是在代码里先创建数据库连接对象,然 ...

  6. 温馨提示:不注意这几点,PDT(产品开发团队)就得散!

    在IPD(集成产品开发)体系中,PDT(Product Development Team,产品开发团队)发挥着至关重要的作用.PDT是一个跨部门.跨职能的协作团队,其成员来自不同的专业领域,包括研发. ...

  7. 2 JavaScript的基础类型

    2 JavaScript的基础类型 JS虽然是一个脚本语言. 麻雀虽小, 五脏俱全. 在js中也是可以像其他编程语言一样. 声明变量, 条件判断, 流程控制等等. 我们先看一下JS中的数据类型 在js ...

  8. #01背包#洛谷 4161 [SCOI2009]游戏

    题目 将 \(n\) 拆成若干个正整数的和, 问这些正整数的LCM有多少种 \(n\leq 10^3\) 分析 考虑这个\(LCM\)一定是1或者由若干个质数的指数幂相乘得到的, 那么可以设\(dp[ ...

  9. #扩展欧拉定理#CF906D Power Tower

    题目 给定一个数列,有\(m\)组询问 定义 \[\large f(x-1)={a_x}^{f(x)} \] 若 \(f(r)=a_r\) 求 \(f(l)\) 对固定的 \(mod\) 取模 分析 ...

  10. 使用 GitLab CI/CD 和阿里云 CLI 自动部署前端项目

    一.什么是 CI/CD? CI(持续交付)是功能迭代后自动构建.打包.校验代码格式.跑单测.单测覆盖率,常见的就是 Webpack.Rollup.ESLint等. CD(持续部署)是经过 CI 后,代 ...