嗨,我想检查给定的日期是否在2个日期之间,当然还有几个小时。因此,如果我们检查13:00是否在13:00和15:00之间,我想成为现实。
我有此代码:
df3 = pd.DataFrame({'A': ['1', '1', '1', '2', '2', '2'],
'B': ['a', 'b', 'c', 'a', 'b', 'c']})
所以我正在检查它是否介于两者之间,但是很奇怪。
如果我将startDayTime = 14:59和endDayTime = 17:00设置为小时 而timeSlotStartTime是14:15仍然让我信服。(这是更大的问题)
并且如果timeSlotStartTime = 17:00给我错误(我想让我成为真的)
我是否有可能在2分钟之内检查之间是否相等?
谢谢
答案 0 :(得分:-1)
https://momentjscom.readthedocs.io/en/latest/moment/05-query/06-is-between/
您可以使用第4个参数包含边线
moment('2016-10-30').isBetween('2016-10-30', '2016-12-30', null, '()'); //false
moment('2016-10-30').isBetween('2016-10-30', '2016-12-30', null, '[)'); //true
moment('2016-10-30').isBetween('2016-01-01', '2016-10-30', null, '()'); //false
moment('2016-10-30').isBetween('2016-01-01', '2016-10-30', null, '(]'); //true
moment('2016-10-30').isBetween('2016-10-30', '2016-10-30', null, '[]'); //true
方括号中的意思是“包括这个目的”,括号中的意思是“排除这个目的”
答案 1 :(得分:-1)
isBetween
使用第三个参数(分钟,小时,天等)和第四个参数[]
来包含包容性
由于您正在比较分钟
,因此应将第三个参数传递为“分钟”var timeSlotStartTime = moment({ hour:14, minute:15 });
var startDayTime = moment({ hour:14, minute:59 });
var endDayTime = moment({ hour:17, minute:00 });
var result = timeSlotStartTime.isBetween(startDayTime, endDayTime, 'minutes', '[]');
console.log(result); // false
isBetween
比赛也是排他性比赛。
moment('2010-10-20').isBetween('2010-01-01', '2012-01-01', 'year'); // false as it is exclusive
2.13.0版引入了包容性。 [
表示包含值。 (
表示排除。如果使用inclusivity参数,则必须同时传递两个指标。
moment('2016-10-30').isBetween('2016-10-30', '2016-12-30', null, '()'); //false
moment('2016-10-30').isBetween('2016-10-30', '2016-12-30', null, '[)'); //true
moment('2016-10-30').isBetween('2016-01-01', '2016-10-30', null, '()'); //false
moment('2016-10-30').isBetween('2016-01-01', '2016-10-30', null, '(]'); //true
moment('2016-10-30').isBetween('2016-10-30', '2016-10-30', null, '[]'); //true