StartTime = '00:10';
EndTIme = '01:20';
这些变量是字符串
问:我怎样才能减去他们并返回以分钟为时间跨度?
希望你能帮助
StartTime = '00:10';
EndTIme = '01:20';
这些变量是字符串
问:我怎样才能减去他们并返回以分钟为时间跨度?
希望你能帮助
做一个函数像一个字符串解析到分钟:
function parseTime(s) {
var c = s.split(':');
return parseInt(c[0]) * 60 + parseInt(c[1]);
}
现在,您可以解析字符串,只是减去:
var minutes = parseTime(EndTIme) - parseTime(StartTime);
var startTime = "0:10";
var endTime = "1:20";
var s = startTime.split(':');
var e = endTime.split(':');
var end = new Date(0, 0, 0, parseInt(e[1], 10), parseInt(e[0], 10), 0);
var start = new Date(0, 0, 0, parseInt(s[1], 10), parseInt(s[0], 10), 0);
var elapsedMs = end-start;
var elapsedMinutes = elapsedMs/1000/60;
如果你打算做了很多的日期/时间操纵的,这是值得一试date.js。
但是,如果你只是想解决这个问题,这里是一个算法,我的头顶。
(1)解析开始/结束值以得到小时和分钟,(2)转换几小时缩短到几分钟,(3)减去
function DifferenceInMinutes(start, end) {
var totalMinutes = function(value) {
var match = (/(\d{1,2}):(\d{1,2})/g).exec(value);
return (Number(match[1]) * 60) + Number(match[2]);
}
return totalMinutes(end) - totalMinutes(start);
}
我得到错误:比赛is null – Treby 2009-12-22 08:20:16
dojo.date.difference
的任务是建立 - 只是要求一个“分“区间。
Get the difference in a specific unit of time (e.g., number of months, weeks, days, etc.) between two dates, rounded to the nearest integer.
Usage:
var foo: Number (integer)=dojo.date.difference(date1: Date, date2: Date?, interval: String?);
This Works Great !!! ..谢谢 – Treby 2009-12-22 08:31:37
这个工作..谢谢 – Sankar 2014-06-25 08:02:46