做一个时间段的页面,一节课30分钟。后端想要的数据结构是这样的2018-09-17|09:00-09:30,2018-09-18|09:30-11:00,2018-09-19|10:00-11:30,2018-09-20|10:30-11:00,2018-09-21|11:00-11:30,2018-09-22|11:30-12:00我首先做成了这样的数据结构setArray=[data:2018-09-17,ranges:[["09:00","09:30"],["09:30","10:00"],["10:30","11:30"],["11:30","12:00"]],data:2018-09-18,ranges:[["09:00","09:30"],["09:30","10:00"],["10:30","11:30"],["11:30","12:00"]],]vargetJson=setArray.map(d=>{returnd.date+'|'+d.ranges.map(r=>r.join('-')).join('|')}).join(',')通过上面的方法也成功转化成后端想要的结构了。但是后端说,如果几节课属于连续一块的,就合成一个数组开始结束时间就行了就好比上面写的ranges:[["09:00","09:30"],["09:30","10:00"],["10:30","11:30"],["11:30","12:00"]]需要改成ranges:[["09:00","10:00"],["10:00","12:00"],]求帮一下忙
2 回答

慕妹3146593
TA贡献1820条经验 获得超9个赞
s=[];for(leteofranges){letv=s.pop();if(v&&v[1]==e[0]){s.push([v[0],e[1]]);}else{s.push(v,e)}}s.shift();//移除undefined
添加回答
举报
0/150
提交
取消