最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

我如何设置从Javascript对象中删除属性的条件?

IT培训 admin 4浏览 0评论

我如何设置从Javascript对象中删除属性的条件?

如果计数器!== maxCount,我试图删除level_6,但是它同时在“ if”和“ else”上都删除了level_6。

let maxCount = 5;
let counter = 1;

thisbinations = {
  level_1: [ [0] ],
  level_2: [ [0] ],
  level_3: [ [0] ],
  level_4: [ [0] ],
  level_5: [ [0] ],
  level_6: [ [0] ]
};

app.post("/get-level", CSRFHeaderSecurity.Init, (req, res) => {
  let level = req.body.level;

  if (level === 1) {
    if (counter === maxCount) {
      counter = 1;
    } else {
      counter++;
    }
    storage.setItem("counter", counter).then(() => {
      console.log(counter);
    });
  }

  if (counter === maxCount) {
    res.send(
      JSON.stringify({
        level: thisbinations[`level_${level}`]
      })
    );
  } else {
    delete thisbinations.level_6;
    res.send(
      JSON.stringify({
        level: thisbinations[`level_${level}`]
      })
    );
  }
});

如果计数器等于5,我希望获得5个组合/级别,但是如果计数器不等于5,我希望组合/级别保持6

回答如下:

您的逻辑有问题。如果计数器达到maxCount的值,则在level_1上删除level_6获取。此代码块是罪魁祸首:

if (level === 1) {
if (counter === maxCount) {
  counter = 1;
} else {
  counter++;
}

我如何设置从Javascript对象中删除属性的条件?

如果计数器!== maxCount,我试图删除level_6,但是它同时在“ if”和“ else”上都删除了level_6。

let maxCount = 5;
let counter = 1;

thisbinations = {
  level_1: [ [0] ],
  level_2: [ [0] ],
  level_3: [ [0] ],
  level_4: [ [0] ],
  level_5: [ [0] ],
  level_6: [ [0] ]
};

app.post("/get-level", CSRFHeaderSecurity.Init, (req, res) => {
  let level = req.body.level;

  if (level === 1) {
    if (counter === maxCount) {
      counter = 1;
    } else {
      counter++;
    }
    storage.setItem("counter", counter).then(() => {
      console.log(counter);
    });
  }

  if (counter === maxCount) {
    res.send(
      JSON.stringify({
        level: thisbinations[`level_${level}`]
      })
    );
  } else {
    delete thisbinations.level_6;
    res.send(
      JSON.stringify({
        level: thisbinations[`level_${level}`]
      })
    );
  }
});

如果计数器等于5,我希望获得5个组合/级别,但是如果计数器不等于5,我希望组合/级别保持6

回答如下:

您的逻辑有问题。如果计数器达到maxCount的值,则在level_1上删除level_6获取。此代码块是罪魁祸首:

if (level === 1) {
if (counter === maxCount) {
  counter = 1;
} else {
  counter++;
}
发布评论

评论列表 (0)

  1. 暂无评论