为了账号安全,请及时绑定邮箱和手机立即绑定

请问下如何用moment将两个时间点的差用HH:mm:ss表示出来

请问下如何用moment将两个时间点的差用HH:mm:ss表示出来

qq_笑_17 2018-12-14 15:10:00
你好,请问下如何用moment将两个时间点的差用HH:mm:ss表示出来,例如7月1日0点0分0秒距离7月3日12点0分0秒是60个小时,应为60:00:00。万分感谢
查看完整描述

1 回答

?
慕后森

TA贡献1802条经验 获得超5个赞

var a = moment([2017, 7, 1]);

var b = moment([2017, 7, 3, 12]);

var duration = moment.duration(b.diff(a));

var m = {

    hours: `${parseInt(duration.asHours(), 10)}`,

    minutes: `${parseInt(duration.asMinutes()) % 60}`,

    seconds: `${parseInt(duration.asSeconds()) % 60}`,

    toString: function() {

        let m = `00${this.minutes}`.substr(this.minutes.length);

        let s = `00${this.seconds}`.substr(this.seconds.length);

        return `${this.hours}:${m}:${s}`;

    }

};


console.log(m.toString());

https://img1.sycdn.imooc.com//5c402e220001df5104200208.jpg

补充:再来个简化点的版本

var a = moment([2017, 7, 1]);

var b = moment([2017, 7, 3, 12]);

var duration = moment.duration(b.diff(a));

var s = `${duration.asHours()}:${moment([2000, 1, 1]).add(duration).format("mm:ss")}`;

console.log(s);


查看完整回答
反对 回复 2019-01-17
  • 1 回答
  • 0 关注
  • 411 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信