javascript - 如何使用nodejs更新for循环内数组中的单个键值?

标签 javascript node.js

我想更新 for 循环内 flags[ ] 数组中的每个字段。在每次迭代期间,我需要将相应的标志更新为 true。请帮我解决这个问题。

var flags = {terminationFlag : false,
        transferFlag : false,
        jrCancelledFlag : false,
        jrFilledFlag : false,
        jrOpenFlag : false,
        miegFlags : false,
        headcountFlag : false,
        replacementReqFlag : false,
        costcentreFlag : false,
        gradeMapFlag : false}


var array = [1,2,3,4,5,6,7,8,9,10];
for (i=0; i < array.length ;i++){
flags[i] = true
}

if (("terminationFlag" = true) && ("transferFlag" = true)){
 //do some operation
 }  

最佳答案

您有一个标志对象,它不是数组。如果你想要一个数组,你可以使用 Object.keys

let flags = {
  terminationFlag: false,
  transferFlag: false,
  jrCancelledFlag: false,
  jrFilledFlag: false,
  jrOpenFlag: false,
  miegFlags: false,
  headcountFlag: false,
  replacementReqFlag: false,
  costcentreFlag: false,
  gradeMapFlag: false
}

Object.keys(flags).forEach(key => {
  flags[key] = true;
})
console.log(flags)

PS:if (("terminationFlag"= true) && ("transferFlag"= true)){

不会按预期工作,因为您尝试在 if 语句中将字符串设置为 true 而不是测试它们

if (flags["terminationFlag"] && flags["transferFlag"]) {

if (flags["terminationFlag"]===true && flags["transferFlag"]===true) {

关于javascript - 如何使用nodejs更新for循环内数组中的单个键值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54287136/

相关文章:

javascript - 当我在浏览器上时看不到 Firebase 通知

javascript - 为什么 babel 将导入的函数调用重写为 (0, fn)(...) ?

javascript - 如何使用 JSON.parse 查找 JSON 的长度?

javascript - dgrid ColumnHider : disabling the hide columns menu?

node.js - 将 Sinon SinonStubbedInstance 与 Typescript 一起使用

javascript - 从原型(prototype)中选定的复选框获取innerHTML文本

node.js - 如何更改heroku Nodejs仪表板中的时区?

node.js - 如何通过其 id 选择子文档?

ruby-on-rails - 什么时候线程框架比事件驱动框架更好? (即,什么时候 rails 比 node.js 更好?)

javascript - EINVAL : invalid argument, 读取