为了账号安全,请及时绑定邮箱和手机立即绑定

js转化数据结构

js转化数据结构

蝴蝶不菲 2019-05-12 14:02:59
做一个时间段的页面,一节课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
                            
查看完整回答
反对 回复 2019-05-12
  • 2 回答
  • 0 关注
  • 394 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号