时刻比较

时间:2019-04-15 06:18:23

标签: javascript

我想将时间限制在12:00 AM和6:00 AM之间,但是我在var startTimeGraveyard和var timeGraveyard行上收到“无效日期”错误

var startTimeGraveyard = moment("12:00 AM").format('LT');

var timeGraveyard = moment("6:00 AM").format('LT');

if (time >= startTimeGraveyard && time <= timeGraveyard) {
    $('#lblGraveyard').text("Graveyard Schedule");
}

1 个答案:

答案 0 :(得分:1)

尝试一下:

var startTimeGraveyard = moment("12:00 AM", "LT");

var timeGraveyard = moment("6:00 AM", "LT");

if (time.isBetween(startTimeGraveyard, timeGraveyard)) {
    $('#lblGraveyard').text("Graveyard Schedule");
}

假设time也是一个瞬间对象。

之所以可行,是因为.format(<format>)用于根据矩对象生成字符串。为了从字符串初始化矩对象,必须将格式作为第二个参数传递给moment()函数。

console.log(moment('1:00 PM', 'LT').format('HH:mm:ss'))将正确初始化一下矩对象,但由于格式的原因,最后会向控制台输出13:00:00。