Javascript 获取周天数和一天中的特定时间

Javascript 获取周天数和一天中的特定时间,javascript,Javascript,我使用javaScript在工作日和工作时间(周一至周五08:00至16:50)显示元素 我正在使用以下代码: var date = new Date(); var thisMin = date.getMinutes(); var thisHour = date.getHours(); var thisWeekday = date.getDay(); // True if Mon - Fri between 08:00 - 16:50 if (thisWeekday > 0 &&a

我使用javaScript在工作日和工作时间(周一至周五08:00至16:50)显示元素

我正在使用以下代码:

var date = new Date();
var thisMin = date.getMinutes();
var thisHour = date.getHours();
var thisWeekday = date.getDay();
// True if Mon - Fri between 08:00 - 16:50
if (thisWeekday > 0 && thisWeekday < 6 && thisHour > 7 && (thisHour < 17 && thisMin <= 50)) {
    alert("True");
} else {
    alert("False");
}
var-date=新日期();
var thisMin=date.getMinutes();
var thishhour=date.getHours();
var thisWeekday=date.getDay();
//如果周一至周五在08:00至16:50之间,则为真
如果(thisWeekday>0&&thisWeekday<6&&thisHour>7&&thisHour<17&&thisMin请尝试以下代码:

var date = new Date();
var thisMin = date.getMinutes();
var thisHour = date.getHours();
var thisWeekday = date.getDay();
var isSuccess = false;
// True if Mon - Fri between 08:00 - 16:50
if (thisWeekday > 0 && thisWeekday < 6 && thisHour > 7 && (thisHour < 17)) {
    if (thisHour == 16 && thisMin > 50) {
        isSuccess = false;
    } else {
        isSuccess = true;
    }
} else {
    isSuccess = false;
}

alert(isSuccess);
var-date=新日期();
var thisMin=date.getMinutes();
var thishhour=date.getHours();
var thisWeekday=date.getDay();
var isSuccess=false;
//如果周一至周五在08:00至16:50之间,则为真
如果(此工作日>0&&此工作日<6&&此小时>7&&(此小时<17)){
如果(thishhour==16&&thisMin>50){
isSuccess=false;
}否则{
isSuccess=true;
}
}否则{
isSuccess=false;
}
警报(isSuccess);

请注意,您的条件有两个不同的部分:“必须在周间隔内”和“必须在时间间隔内”。代码可以通过明确的方式更清楚地反映这一点

对于时间比较,我将重塑当前时间,以便您可以使用
Date
=
运算符,而不是自己重新实现时间比较:

var startTime = new Date(0, 0, 0, 8, 0);
var endTime = new Date(0, 0, 0, 16, 50);
var startWeekday = 1;
var endWeekday = 5;

function shouldDisplay() {
    var d = new Date();

    function withinWeekInterval() {
        return (d.getDay() >= startWeekday &&
                d.getDay() <= endWeekday);
    }

    function withinTimeInterval() {
        var now = new Date(0, 0, 0, d.getHours(), d.getMinutes());
        return (now >= startTime &&
                now <= endTime);
    }

    return (withinWeekInterval() && withinTimeInterval());
}

您的条件失败,例如13:53是一个有效时间,但警告为false,您必须检查
thismindutes Ok,谢谢。那么我的代码应该是什么样子?
thiswekday>0&&thiswekday<6&&thishhour>7&&thishhour<16||(thisHour===16&&thisMin这看起来很有希望。如何在if/else语句中使用此函数?
alert(shouldDisplay());