-5
我得到了字符串格式的时间,我想在几分钟之内找出时间差。我将如何做到这一点?如何计算AngularJS中的时差?
我得到了字符串格式的时间,我想在几分钟之内找出时间差。我将如何做到这一点?如何计算AngularJS中的时差?
您可以使用Moment库:
moment.utc(moment(time_stop.diff(moment(time_start))).format("HH:mm")
你可以在一个函数包装这个调用:
$scope.timeDifference = function(start, end) {
return moment.utc(moment(end).diff(moment(start))).format("HH:mm");
}
,然后在您的视图:
{{ timeDifference("15:40", "16:20") }}
这里一种方法来获得小时,分钟和秒的差异:
var date1 = new Date("October 13, 2014 16:00:00");
var date2 = new Date("October 13, 2014 16:10:00");
var diffMs = Math.abs(date1 - date2); // milliseconds between date1 & date2
var diffDays = Math.round(diffMs/86400000); // days
var diffHrs = Math.round((diffMs % 86400000)/3600000); // hours
var diffMins = Math.round(((diffMs % 86400000) % 3600000)/60000); // minutes
console.log(diffDays + " days, " + diffHrs + " hours, " + diffMins + " minutes");
使用此代码,您应该能够使您的过滤器。
您期望的结果是什么?这甚至没有意义。 – yarons
为什么你不能在你的控制器中写一个JS函数并调用它呢? – Avinash
'date'过滤器期望输入一个'date_expression'(日期格式为Date对象,毫秒(字符串或数字)或各种ISO 8601日期时间字符串格式)。 “hh:mm”不是'date_expression' ...(请参阅https://docs.angularjs.org/api/ng/filter/date)。 – MarcoS