如何使用 NodeJs 将返回的二进制值与日期进行比较

How to compare returned binary values with date using NodeJs

我是 运行 一个 sql 查询,其中 returns 我是一个列 days,它由以下类似值 1111100 组成。这里每一位代表每一天,例如返回值中的第一位 '1' 是星期一,第六位 '0' 是星期六。现在我想根据这些返回值执行一些操作。例如说如果星期一是 '1' 我想在星期一触发一个操作,如果星期一是 '0' 我不必在星期一执行任何操作。在NodeJs中可以用什么方法来实现这个需求

// Jobs
let monJob = () => { console.log('Monday') };
let tueJob = () => { console.log('Tuesday') };
let wedJob = () => { console.log('Wednesday') };
let thuJob = () => { console.log('Thursday') };
let friJob = () => { console.log('Friday') };
let satJob = () => { console.log('Saturday') };
let sunJob = () => { console.log('Sunday') };

// Inputs
let bitDays = '0111100';
//let days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'];

// Verify block
let jobs = [monJob, tueJob, wedJob, thuJob, friJob, satJob, sunJob]
bitDays.split('').forEach((bit, index) => {
    if (bit == '1')
        jobs[index]();
});

我认为 Node.js 中没有此功能,但您可以这样做:

const mask = "1111100";
const dayOfWeekMap = [
  "Monday",
  "Tuesday",
  "Wednesday",
  "Thursday",
  "Friday",
  "Saturday",
  "Sunday",
];

for (let idx in mask) {
  if (mask[idx] === "1") {
    console.log(`Do something on ${dayOfWeekMap[idx]}`);
  }
}