gpt4 book ai didi

javascript - 如何使用Moment.JS判断当前时间是否在2倍之间

转载 作者:IT王子 更新时间:2023-10-29 03:12:32 27 4
gpt4 key购买 nike

假设当前时间是 09:34:00 (hh:mm:ss),我在两个变量中有另外两个时间:

var beforeTime = '08:34:00',
afterTime = '10:34:00';

如何使用Moment.JS判断当前时间是否在beforeTimeafterTime之间?

我看过 isBetween() ,我试过像这样使用它:

moment().format('hh:mm:ss').isBetween('08:27:00', '10:27:00')

但这不起作用,因为一旦我将第一个(当前时间)时刻格式化为字符串,它就不再是一个时刻对象。我也试过使用:

moment('10:34:00', 'hh:mm:ss').isAfter(moment().format('hh:mm:ss')) && moment('08:34:00', 'hh:mm:ss').isBefore(moment().format('hh:mm:ss'))

但是我得到了 false,因为当我格式化当前时间时,它不再是一个时刻。

我如何让它工作?

最佳答案

  • 您可以将时刻实例传递给 isBetween()
  • 省略 format() 调用,您想要的是在第二次尝试的第一时刻传递解析格式,例如 int。

就这些:

var format = 'hh:mm:ss'

// var time = moment() gives you current time. no format required.
var time = moment('09:34:00',format),
beforeTime = moment('08:34:00', format),
afterTime = moment('10:34:00', format);

if (time.isBetween(beforeTime, afterTime)) {

console.log('is between')

} else {

console.log('is not between')

}

// prints 'is between'

关于javascript - 如何使用Moment.JS判断当前时间是否在2倍之间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36197031/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com