Javascript 检查当前时间是否介于打开和关闭之间;Angularjs的关闭时间

Javascript 检查当前时间是否介于打开和关闭之间;Angularjs的关闭时间,javascript,angularjs,Javascript,Angularjs,我想指出的是,在当前时间、营业时间和营业结束时间内,一家公司是否营业。这是我的时间格式 $scope.open = "1970-01-01T13:00:00.000Z"; // We can ignore the dates $scope.close = "1970-01-02T22:00:00.000Z" 在Angularjs中是否有一种简单可靠的方法来确定这一点?差不多 <div ng-if="currentTime >= open && currentTime

我想指出的是,在当前时间、营业时间和营业结束时间内,一家公司是否营业。这是我的时间格式

$scope.open = "1970-01-01T13:00:00.000Z"; // We can ignore the dates
$scope.close = "1970-01-02T22:00:00.000Z"
在Angularjs中是否有一种简单可靠的方法来确定这一点?差不多

<div ng-if="currentTime >= open && currentTime < close"></div>

我已经找到了几个可能处理这个问题的矩库,但是我觉得导入整个库对于基本的时间比较来说是过分的,而且我遇到的大多数javascript解决方案都不能处理这个时间格式

$scope.open = "1970-01-01T13:00:00.000Z"; // We can ignore the dates
$scope.close = "1970-01-02T22:00:00.000Z"
欢迎您的任何意见

您可以比较日期

const isStoreOpen = (currentTime, openTime, closedTime) => currentTime >= openTime && currentTime< closedTime;
isStoreOpen(Date.now(), new Date('01 01 1986'), new Date('01  01 2021')); //true
isStoreOpen(Date.now(), new Date('01 01 2018'), new Date('01  01 2021')); //false
const isStoreOpen=(currentTime,openTime,closedTime)=>currentTime>=openTime&¤tTime
您可以比较日期

const isStoreOpen = (currentTime, openTime, closedTime) => currentTime >= openTime && currentTime< closedTime;
isStoreOpen(Date.now(), new Date('01 01 1986'), new Date('01  01 2021')); //true
isStoreOpen(Date.now(), new Date('01 01 2018'), new Date('01  01 2021')); //false
const isStoreOpen=(currentTime,openTime,closedTime)=>currentTime>=openTime&¤tTime
您可以创建一个方法,直接检查店铺的状态并返回true或false

$scope.checkShopStatus = function() {
    var open = new Date("1970-01-01T13:00:00.000Z"); // We can ignore the dates
    var close = new Date("1970-01-02T22:00:00.000Z");
    var currentDate = new Date();
    if (currentDate >= open && currentDate <= close) {
        return true;
    }
    return false;
};
$scope.checkShopStatus=function(){
var open=新日期(“1970-01-01T13:00:00.000Z”);//我们可以忽略这些日期
var关闭=新日期(“1970-01-02T22:00:00.000Z”);
var currentDate=新日期();

如果(currentDate>=open&¤tDate=open&¤tDate,您可以创建一个方法,直接检查商店的状态并返回true或false

$scope.checkShopStatus = function() {
    var open = new Date("1970-01-01T13:00:00.000Z"); // We can ignore the dates
    var close = new Date("1970-01-02T22:00:00.000Z");
    var currentDate = new Date();
    if (currentDate >= open && currentDate <= close) {
        return true;
    }
    return false;
};
$scope.checkShopStatus=function(){
var open=新日期(“1970-01-01T13:00:00.000Z”);//我们可以忽略这些日期
var关闭=新日期(“1970-01-02T22:00:00.000Z”);
var currentDate=新日期();

如果(currentDate>=open&¤tDate=open&¤tDate提供的答案很有帮助,但我希望比较时间,而不是日期。我最终使用了moment.js并将日期格式化为24小时字符串,然后进行比较

var currentTime = moment(new Date()).format('H:mm');
var openTime = moment(business.hours.sunday.open_time).format('H:mm');
var closeTime = moment(business.hours.sunday.close_time).format('H:mm');

function isStoreOpen(currentTime, openTime, closeTime){   
  if(currentTime >= openTime && currentTime <= closeTime){
    return true;
  }
  return false
}
var currentTime=moment(new Date()).format('H:mm');
var openTime=时刻(business.hours.sunday.open_time)。格式('H:mm');
var closeTime=时刻(business.hours.sunday.close_time)。格式('H:mm');
函数isStoreOpen(currentTime、openTime、closeTime){

如果(currentTime>=openTime&¤tTime提供的答案很有帮助,但我希望比较时间,而不是日期。我最终使用了moment.js并将我的日期格式化为24小时字符串,然后进行比较

var currentTime = moment(new Date()).format('H:mm');
var openTime = moment(business.hours.sunday.open_time).format('H:mm');
var closeTime = moment(business.hours.sunday.close_time).format('H:mm');

function isStoreOpen(currentTime, openTime, closeTime){   
  if(currentTime >= openTime && currentTime <= closeTime){
    return true;
  }
  return false
}
var currentTime=moment(new Date()).format('H:mm');
var openTime=时刻(business.hours.sunday.open_time)。格式('H:mm');
var closeTime=时刻(business.hours.sunday.close_time)。格式('H:mm');
函数isStoreOpen(currentTime、openTime、closeTime){

如果(currentTime>=openTime&¤tTime First,您必须将强格式转换为js日期对象。您可以使用
new date('1970-01-01T13:00:00.000Z')
来实现这一点,然后在比较之前将日期设置为今天的日期,就像第一次一样,您必须将强格式转换为js日期对象。您可以使用
new date来实现这一点('1970-01-01T13:00:00.000Z')
然后在比较之前将日期设置为今天的日期,就像我想你是想把
currentTime
而不是
openTime
,不是吗?我想你是想把
currentTime
而不是
openTime,不是吗?