gpt4 book ai didi

Javascript OR 运算符在 if 语句中不起作用

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:54:25 26 4
gpt4 key购买 nike

如果星期几与我的声明中列出的任何一天相匹配,我试图让这个 Javascript 做一些事情,并将其限制在 17:00 到 19:00 之间,但是 OR 运算符没有像我预期的那样工作,我是 JS 的新手,我想知道我是否误解了这个运算符的使用。如果我只为一周中的某一天列出一个值,而不是像我的示例中那样列出 3 个值,那么代码会如我所愿地工作。

var d = new Date();
var dayOfWeek = d.getDay(); // 0 = Sunday
var hour = d.getHours();

if ( dayOfWeek == 4 || 5 || 6 && hour >= 17 && hour < 19 ){
// do stuff
} else {
// do other stuff
}

最佳答案

在这种情况下,您最好使用范围检查,因为您只需要对三个或更多个进行两次比较 - 而且它更易于维护,只需在必要时更改一个值即可。

if (dayOfWeek >= 4 && dayOfWeek <= 6 && hour >= 17 && hour < 19) {

正确的 OR 条件需要括号,因为 precedence && 超过 ||

if ((dayOfWeek == 4 || dayOfWeek == 5 || dayOfWeek == 6) && hour >= 17 && hour < 19 ) {

关于Javascript OR 运算符在 if 语句中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44841084/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com