Moment.js:锻炼店开闭时间
问题描述:
随着Moment.js我试图探测店开闭时间,但无论我多么看看文档和交换功能,围绕我从isBefore()
& isAfter()
false
响应提前Moment.js:锻炼店开闭时间
m.opening=[
moment('11:30', "HH:MM"),
moment('01:30', "HH:MM") //1:30AM the next day
];
console.log(m.opening[1].isBefore(moment('07:00', "HH:MM"))); //always false no matter if I use isBefore() or isAfter()
if(m.opening[1].isBefore(moment('7:00', "HH:MM")))
m.opening[1].add(1,'day'); //If closing time is before 7AM add a day
m.range = m.moment.range(m.opening);
感谢您的帮助
答
你的价值没有被设置为你认为他们是。
我添加了一个健全性检查,发现m.opening
是一个有两个空值的数组。
其中,我读了文档,你传递错误的字符串来解析时间。你想要的字符串是HH:mm
,而不是HH:MM
。
我在下面包含了一段代码,包括代码和一个工作示例。
双重检查值是你期望的值应始终是第一个调试步骤之一。
var m = {};
m.opening=[
moment('11:30', "HH:MM"),
moment('01:30', "HH:MM") //1:30AM the next day
];
console.log(m);
console.log(m.opening[1].isBefore(moment('07:00', "HH:MM"))); //always false no matter if I use isBefore() or isAfter()
//////////////
m.opening=[
moment('11:30', "HH:mm"),
moment('01:30', "HH:mm") //1:30AM the next day
];
console.log(m);
console.log(m.opening[1].isBefore(moment('07:00', "HH:mm"))); // Now returns true.
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.13.0/moment.min.js"></script>
'时刻('01:30' , “HH:MM”)// 1:30AM下一day' - 这是如何成为第二天? –
我希望用m.opening [1] .add(1,'day');'' – Ash