你好,我创建了一个 jsfiddle 示例:-
var setIntervals = function (start, end, inc) {
start = start.toString().split(':');
end = end.toString().split(':');
inc = parseInt(inc, 10);
var pad = function (n) { return (n < 10) ? '0' + n.toString() : n; },
startHr = parseInt(start[0], 10),
startMin = parseInt(start[1], 10),
endHr = parseInt(end[0], 10),
endMin = parseInt(end[1], 10),
currentHr = startHr,
currentMin = startMin,
previous = currentHr + ':' + pad(currentMin),
current = '',
r = [];
do {
currentMin += inc;
if ((currentMin % 60) === 0 || currentMin > 60) {
currentMin = (currentMin === 60) ? 0 : currentMin - 60;
currentHr += 1;
}
current = currentHr + ':' + pad(currentMin);
r.push(previous + ' - ' + current);
previous = current;
} while (currentHr !== endHr);
return r;
};
单击此处查看示例:-http://jsfiddle.net/w6EQ6/3/
或者,如果您不想打印范围,请参阅下面给出的链接:-
http://jsfiddle.net/w6EQ6/6/
修复了问题:http://jsfiddle.net/w6EQ6/8/