javascript - 计算相对于用户位置的不同时区的营业时间
问题描述
我正在构建一个基于位置的应用程序,让用户可以找到附近的餐馆并确定它们是开门还是关门
用户还可以搜索全球各地的餐厅。该应用程序将通知他们找到的餐厅是否相对于用户的时区是开放或关闭的
我将小时数存储为标准日期格式的对象
{
openTime: Thu Jan 01 1970 09:00:00 GMT-0500 (Eastern Standard Time),
closeTime: Thu Jan 01 1970 20:00:00 GMT-0500 (Eastern Standard Time)
}
为了确定企业是否开放,我正在运行以下计算
let openTime = moment(hours.open_time).format('HH:mm');
let closeTime = moment(hours.close_time).format('HH:mm');
let currentTime = moment().format('HH:mm');
// output format: Open: 09:00 | Close: 20:00 | Current: 19:30)
let isOpen = currentTime >= openTime && currentTime < closeTime ? true : false;
(对于营业时间超过午夜的餐厅,此检查可能存在缺陷)
我应该如何针对不同的时区执行此计算?我有时刻准备好去,但我还没有弄清楚它的逻辑
任何帮助或指导表示赞赏!
解决方案
推荐阅读
- php - 在使用 laravel barryvdh/laravel-snappy 生成的 PDF 中设置密码
- javascript - 将 UTC ISO 值转换为“字符串”(文本)
- python - 将一组特定的参数强制到抽样批次中
- http - 应该使用什么 User-Agent 来获取 Open Graph 数据?
- r - 是否有 R 函数“并行和”?
- django - 将一个 Django 模型中的数据更改推送到另一个模型
- angularjs - 如何在 ng-repeat div angularjs 中获取 html 下拉列表中的选定值
- exception - Kafka:如何修复 TimeoutException 错误?
- google-app-engine - CPU 限制对 App Engine 实例意味着什么?
- android - 在 Android 10 上,如何触发 WLAN 开启和关闭权限的弹出系统消息?