JavaScript - 是否可以在不使用 OR 的情况下在一个条件下检查多个工作日?

标签 javascript

我想缩短我的以下代码:

if (d.getDay() == 1 && d.getHours() <= 21 || d.getDay() == 2 && d.getHours() <= 21 || d.getDay() == 3 && d.getHours() <= 21 || d.getDay() == 4 && d.getHours() <= 21 || d.getDay() == 5 && d.getHours() <= 21) {
    //do something
}

像这样的东西?

if (d.getDay() == 1-5 && d.getHours() <= 21) {
    //do something
}

甚至更短。那可能吗?最好的方法是什么?我在我的代码中多次使用该行,有时几乎没有变化。如果可能,不用 jQuery。

最佳答案

您可以简化您的 if使用条件 >=<=运营商,

var day = d.getDay();
var hours = d.getHours();
if ((day >= 1 && day <=5) && hours <= 21) {
    //do something
}

关于JavaScript - 是否可以在不使用 OR 的情况下在一个条件下检查多个工作日?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35842069/

相关文章:

javascript - 显示最大值的控制编号

javascript - 如何在 Javascript 中使用 location.href 方法将嵌套引号变为三重?

javascript - 使用映射时 Rollup 返回未定义或带有值的数组

javascript - Meteor 上出现错误的同步问题

javascript - $.ajax 调用失败,数据类型为 json

javascript - 使用 HTML 文件通过应用程序脚本通过文本框查询 Google 电子表格

javascript - 使用 NodeJS 无法获取特定字段的 JSON?

javascript - 在 Javascript 中将 BigInteger 转换为 Int64

javascript - 我怎样才能在页面中一直滚动内容?

javascript - AngularJS - $compile 之后,html 中的调用新函数运行多次