所以我有一个名为c [在这里插入整数] _bool的变量。 变量列表是:
c1_bool = false,
c2_bool = false,
c3_bool = false,
c4_bool = false,
c5_bool = false,
c6_bool = false,
c7_bool = false,
c8_bool = false,
我想遍历这些变量,并添加另一个变量,如:
var iC = 1;
while( iC < 9 ){
if( c[here comes iC]_bool ){
//insert code
} else {}
iC ++;
}
我该怎么做?
答案 0 :(得分:0)
虽然这可以通过使用eval()
来实现,但这是一个黑客攻击,不应该使用。
更好的方法是将标志设置为对象的属性。然后,您可以使用括号表示法来连接属性的名称。试试这个:
var flags = {
c1: false,
c2: false,
c3: false,
c4: false,
c5: false,
c6: false,
c7: false,
c8: false
}
for (var i = 0; i <= Object.keys(flags).length; i++) {
if (flags['c' + (i + 1)]) {
// do something
} else {}
}
假设对象中没有其他属性,您可以循环使用它的键:
for (var key in flags) {
if (flags[key]) {
console.log(key);
} else {}
}