特定の時間が別の2つの間にあるかどうかを確認する必要があります。スケジュールを確認する方法
今日:例えば木(複数で、そのrecorrent)11:39 PM
ストアX 00:00 AMから木曜日午後11時59分に開放されています。したがって、関数isOpenはtrueを返します。
私はデータベース(Firebase)でこれを書いて、このための回避策を作っています
場合はオープンとクローズは、私がチェック機能では1970年1月1日からのミリ秒である
{
"open" : 7200000,
"day" : "Thursday",
"close" : 93540000
}
現在の日付と一致する日がデータベースにあります。この後、1970年1月1日午後11時39分にDateを作成し、openが小さいかどうか、closeが現在の時刻よりも大きいかどうかを確認する必要があります。
let open = false;
if (store.schedule) {
for (sch in store.schedule) {
if (store.schedule[sch].day == day) {
open = self.checkHour(store.schedule[sch].open, store.schedule[sch].close);
}
}
}
return open;
そしてcheckHour
checkHour = function (open, close) {
return moment().year(1970).month(0).date(1).isBetween(moment(open), moment(close));
};
PS:私は
ひどいmoment.js、ひどいソリューションを使用しています、私は知っています。私は良い方法があると確信しています。
あなたのコードの例であなたの質問を更新してください。 – Soviut
また、使用しているデータベースについて説明してください。 – Soviut
@ソビエト私は質問に例を挙げました。私はFirebaseを使用しています – Ace