js计算两个时间差 显示多少天时分秒

新建js文件

function intervalTime(startTime, endTime, type = 'text') {
    var cha = endTime - startTime;
    var day = Math.floor(cha / (24 * 3600 * 1000));
    var hours = Math.floor(cha % (24 * 3600 * 1000) / (3600 * 1000));
    var minutes = Math.floor(cha % (24 * 3600 * 1000) % (3600 * 1000) / (60 * 1000));
    var seconds = Math.floor(cha % (24 * 3600 * 1000) % (3600 * 1000) % (60 * 1000) / 1000);
    var s1 = "";
    // 如果计算大于等于1再展示,否则只展示天和分钟
    if (type == 'text') {

        if (day >= 1) {
            s1 += day + "天"
        }
        if (hours >= 1) {
            s1 += hours + "小时";
        }
        if (minutes > 0) {
            s1 += minutes + "分钟";
        }
        if (seconds > 0) {
            s1 += seconds + "秒";
        }

        return s1;
    } else {
        let obj = {
            day, hours, minutes, seconds
        }
        return obj
    }

}
// 记得抛出
export {
    intervalTime,
}

然后在   .vue  页面引入

import { intervalTime } from "../../components/time";

//  在页面调用这个方法的时候需要传两个参数
//  第一个是开始时间,第二个为结束时间
//  注意:两个参数都必须为时间戳,所以在传参数的时候必须要先转成时间戳


// 开始时间
let s1 ='2023-01-07'
// 转换时间戳
let oldDay = new Date(s1).getTime();
// 结束时间  获取当前时间戳
let now = new Date().getTime();

this.time = intervalTime(oldDay, now);

猜你喜欢

转载自blog.csdn.net/m0_61672533/article/details/128591287
今日推荐