我是JavaScript新手,这是一个基本问题,但我找不到答案。我创建了几个变量。
var foo1 = true;
var bar = 1;
有什么方法可以重新创建我的布尔变量,包括“bar”的值?我正在尝试创建“foo1 = false;”这里:
foo+bar = false; // or
foo[+bar] = false;
当然这些都不起作用。
答案 0 :(得分:0)
这对您要求的内容有帮助吗?我猜你在哪里将值加在一起你实际上可能想要比较它们的相等性?
//setting variables
var foo1 = true;
var bar = 1;
//foobar1 is defined as the result of comparing foo1 and bar for deep equality, as foo1 and bar aren't the same value false is returned
var foobar1 = foo1 === bar;
snippet.log(foobar1);
//foobar2 actually returns true because it converts the 1 into true
var foobar2 = foo1 == bar;
snippet.log(foobar2);
答案 1 :(得分:0)
正如其他人所指出的那样,尝试将变量名称构造为字符串是一个非常糟糕的主意。而是使对象保持各种值:
var foo = {};
现在,而不是
foo1 = true;
你说
foo[1] = true;
设置bar
的值:
foo[bar] = false;