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

如何判断日期之间不能有交叉

如何判断日期之间不能有交叉

慕妹3146593 2019-02-26 17:16:21
如图为场景需求:如何实现每次新增时,新增数据中的入住年月(不能为空)和腾退年月(可为空)的时间段不能与表格中其他纪录的时间段有交叉和重复?(表格中的数据存放在一个数组中)
查看完整描述

2 回答

?
MMMHUHU

TA贡献1834条经验 获得超8个赞

我提供个不一样的思路:
搜索“活动安排问题”,然后把c改成js实现应该就行了。。。。(逃。。

查看完整回答
反对 回复 2019-03-04
?
动漫人物

TA贡献1815条经验 获得超10个赞

这个其实你还可以进一步细化条件(约束),特别是隐含的。比如:
约定新增的起始日期为startDate,腾退日期为endDate,endDate>startDate

  1. 新增不能在当前日期(cDate)以前,startDate>=Date, endDate>startDate

  2. 有效时间段是一个二维数组chkDate,其以子项chkDate[i][0]排序,升序排列的数组,初始状态是chkDate=[[cDate,]],表示从当前日期开始的有效时间(结束时间未定的),如果chkDate=[]表明没有有效时间段段可能了。

  3. 增加一条时先在有效时间段中检测是否还有空,即chkDate!=[],就轮训chkDate,在此基础上确定一个startDate,注意这个变量需要在chkDate中看。


查看完整回答
反对 回复 2019-03-04
  • 2 回答
  • 0 关注
  • 1106 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

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

帮助反馈 APP下载

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

公众号

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