Dan*_*ani 341 javascript date momentjs
我可以使用MomentJs获得两个日期之间的差异,如下所示:
moment(end.diff(startTime)).format("m[m] s[s]")
Run Code Online (Sandbox Code Playgroud)
但是,我也希望在适用时显示小时(仅当> = 60分钟时才显示).
但是,当我尝试使用以下内容检索持续时间时:
var duration = moment.duration(end.diff(startTime));
var hours = duration.hours();
Run Code Online (Sandbox Code Playgroud)
它返回当前小时而不是两个日期之间的小时数.
如何获得两个时刻之间的小时差异?
Gre*_*egL 537
你很亲密 您只需要使用该duration.asHours()方法(请参阅文档).
var duration = moment.duration(end.diff(startTime));
var hours = duration.asHours();
Run Code Online (Sandbox Code Playgroud)
sel*_*t91 190
以下代码块显示了如何使用MomentJS计算两个日期之间的天数差异.
var now = moment(new Date()); //todays date
var end = moment("2015-12-1"); // another date
var duration = moment.duration(now.diff(end));
var days = duration.asDays();
console.log(days)
Run Code Online (Sandbox Code Playgroud)
Seb*_*ara 141
或者你可以做到:
var a = moment('2016-06-06T21:03:55');//now
var b = moment('2016-05-06T20:03:55');
console.log(a.diff(b, 'minutes')) // 44700
console.log(a.diff(b, 'hours')) // 745
console.log(a.diff(b, 'days')) // 31
console.log(a.diff(b, 'weeks')) // 4
Run Code Online (Sandbox Code Playgroud)
docs:这里
JSO*_*C11 15
您需要做的就是将hours第二个参数传递给moment diff函数.
var a = moment([21,30,00], "HH:mm:ss")
var b = moment([09,30,00], "HH:mm:ss")
a.diff(b, 'hours') // 12
Run Code Online (Sandbox Code Playgroud)
文档: https ://momentjs.com/docs/#/displaying/difference/
例:
const dateFormat = "YYYY-MM-DD HH:mm:ss";
// Get your start and end date/times
const rightNow = moment().format(dateFormat);
const thisTimeYesterday = moment().subtract(1, 'days').format(dateFormat);
// pass in hours as the second parameter to the diff function
const differenceInHours = moment(rightNow).diff(thisTimeYesterday, 'hours');
console.log(`${differenceInHours} hours have passed since this time yesterday`);Run Code Online (Sandbox Code Playgroud)
<script
src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.20.1/moment.min.js">
</script>Run Code Online (Sandbox Code Playgroud)
Kau*_*mar 13
你只需要使用 moment.js 中的 date.diff() 方法
const now = moment.utc();
var end = moment("2021-09-13");
var days = now.diff(end, "days");
console.log(days)Run Code Online (Sandbox Code Playgroud)
<script src="https://momentjs.com/downloads/moment.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>Run Code Online (Sandbox Code Playgroud)
Fra*_*eau 12
我知道这很旧,但这是一个单行解决方案:
const hourDiff = start.diff(end, "hours");
Run Code Online (Sandbox Code Playgroud)
其中start和end是 moment 对象。
享受!
Dry*_*ams 10
有一个很棒的moment方法fromNow(),该方法将以易于理解的形式从特定时间返回时间,如下所示:
moment('2019-04-30T07:30:53.000Z').fromNow() // an hour ago || a day ago || 10 days ago
Run Code Online (Sandbox Code Playgroud)
或者,如果您希望在两个特定日期之间使用它,则可以使用:
var a = moment([2007, 0, 28]);
var b = moment([2007, 0, 29]);
a.from(b); // "a day ago"
Run Code Online (Sandbox Code Playgroud)
摘自文档:
| 归档时间: |
|
| 查看次数: |
310239 次 |
| 最近记录: |