我有一个带有时间间隔的对象数组,数字0表示星期日。在我的时间安排页面中,选择特定日期的不同时间范围。我想将时间值分组。我的初始数组如下
时间表选择看起来像
每个单元格都具有data-day
和data-time
属性,并且所选单元格具有data-selected
属性
我在选定的时间进行迭代,得到的结果是
var selectedIntervals = {};
$('td[data-selected]').each(function() {
var a = $(this).attr('data-day');
var b = $(this).attr('data-time');
if(!selectedIntervals[a]) {
selectedIntervals[a]=[];
}
selectedIntervals[a].push(b);
});
我想要像这样的输出
{
0: [["00:00", "05:00"],["08:00", "11:00"]]
}
请帮忙 。
试试这个:
arr = ["00:00", "01:00", "02:00", "03:00", "04:00", "05:00", "08:00", "09:00", "10:00", "11:00"];
output = [];
start = arr[0];
for(i=1; i<arr.length; i++) {
if(i == arr.length-1) {
output.push([start, arr[i]]);
break;
}
if(parseInt(arr[i]) - parseInt(arr[i-1]) > 1) {
output.push([start, arr[i-1]]);
start = arr[i];
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句