通过 moment diff 获取经过的分钟数
Get the minutes that have elapsed through moment diff
我正在尝试获取两个时间戳之间的分钟差值
我有一个看起来像这样开头的时间戳
'15:44:06'
当我想找到经过的时间时,我创建了一个新的时刻时间戳
var currentTimestamp = Moment(new Date()).format('HH:mm:ss');
哪个returns这个
'15:42:09'
然后我尝试像这样得到差异
var duration = Moment.duration(Moment(currentTimestamp,'HH:mm:ss').diff(Moment(userTimestamp,'HH:mm:ss')));
然后尝试在几分钟内得到它
var elapsedTime = duration().asMinutes();
console.log(elapsedTime);
但是当我登录时在控制台中出现此错误
var elapsedTime = duration().asMinutes();
^
TypeError: object is not a function
大部分代码来自 this Whosebug
你可以通过正确使用矩构造函数来获得差异。
首先,当你初始化你的时间戳时,你应该使用以下格式:
var timestamp = moment('15:44:06','HH:mm:ss');
其次,当你想使用当前时间的差异函数时,你应该这样使用它:
timestamp.diff(moment());
然后,可以使用 .asMinutes()(第一个)将给定的数字转换为分钟
有关更多信息,您应该阅读官方文档 here。
这个问题有点老了,这个答案只是用问题正在寻找的解决方案来更新状态:
const startDate = moment();
...
elapsedDuration = moment.duration(moment().diff(startDate));
//in minutes
elapseDuration.asMinutes();
根据有关 diff 的文档
和 display duration in minutes
您也可以尝试使用最新的 moment.js
var start = moment('15:44:06','HH:mm:ss');
var minutesPassed = moment().diff(start, 'minutes');
我正在尝试获取两个时间戳之间的分钟差值
我有一个看起来像这样开头的时间戳
'15:44:06'
当我想找到经过的时间时,我创建了一个新的时刻时间戳
var currentTimestamp = Moment(new Date()).format('HH:mm:ss');
哪个returns这个
'15:42:09'
然后我尝试像这样得到差异
var duration = Moment.duration(Moment(currentTimestamp,'HH:mm:ss').diff(Moment(userTimestamp,'HH:mm:ss')));
然后尝试在几分钟内得到它
var elapsedTime = duration().asMinutes();
console.log(elapsedTime);
但是当我登录时在控制台中出现此错误
var elapsedTime = duration().asMinutes();
^
TypeError: object is not a function
大部分代码来自 this Whosebug
你可以通过正确使用矩构造函数来获得差异。
首先,当你初始化你的时间戳时,你应该使用以下格式:
var timestamp = moment('15:44:06','HH:mm:ss');
其次,当你想使用当前时间的差异函数时,你应该这样使用它:
timestamp.diff(moment());
然后,可以使用 .asMinutes()(第一个)将给定的数字转换为分钟
有关更多信息,您应该阅读官方文档 here。
这个问题有点老了,这个答案只是用问题正在寻找的解决方案来更新状态:
const startDate = moment();
...
elapsedDuration = moment.duration(moment().diff(startDate));
//in minutes
elapseDuration.asMinutes();
根据有关 diff 的文档 和 display duration in minutes
您也可以尝试使用最新的 moment.js
var start = moment('15:44:06','HH:mm:ss');
var minutesPassed = moment().diff(start, 'minutes');