JS两个日期之间计算时间差(返回:天数,小时,分钟,秒数)

做的一个投票系统, 记录投票已经开始多长时间了, 需要从数据库取出开始时间,与当前时间相比较,获取到时间差

import moment from "moment";

const duration = (start) => {
        let startTime = moment(start).valueOf(); // 开始时间
        let endTime = moment().valueOf(); // 结束时间
        let usedTime = endTime - startTime; // 相差的毫秒数
        let days = Math.floor(usedTime / (24 * 3600 * 1000)); // 计算出天数
        let leavel = usedTime % (24 * 3600 * 1000); // 计算天数后剩余的时间
        let hours = Math.floor(leavel / (3600 * 1000)); // 计算剩余的小时数
        let leavel2 = leavel % (3600 * 1000); // 计算剩余小时后剩余的毫秒数
        let minutes = Math.floor(leavel2 / (60 * 1000)); // 计算剩余的分钟数
        let leavel3 = leavel2 % (60 * 1000) // 计算剩余分钟后剩余的毫秒数
        let seconds = Math.floor(leavel3 / 1000 ) // 计算剩余的秒数
        // return days + '天' + hours + '时' + minutes + '分' + seconds + '秒';
        return {"days":days, "hours":hours, "minutes":minutes, "seconds":seconds}
    }

// 调用:
duration(startDate)
// 返回:{
days: 0
hours: 0
minutes: 0
seconds: 13
}

版权声明:本文为weixin_44984864原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。