Javascript 如何将';s name等于一个变量';s值多少?

Javascript 如何将';s name等于一个变量';s值多少?,javascript,arrays,Javascript,Arrays,//这里是随机数生成器 //包含信息的数组 foo1=[“这是真的!”,真的,假的]; foo2=[“这是假的!”,假的,假的]; foo3=[“这可能是错误的!”,错误,错误]; foo4=[“这可能是真的!”,对,错]; foo5=[“这可能是真的!”,对,错]; //选择随机数组名 fooID=“foo”+随机数(1,5); /*我该怎么做- 警报([0]); [2] =正确; */您可以简单地使用一个,因为您的数据是可编辑的,您需要一个随机数才能从中得到结果 函数getRandomEl

//这里是随机数生成器
//包含信息的数组
foo1=[“这是真的!”,真的,假的];
foo2=[“这是假的!”,假的,假的];
foo3=[“这可能是错误的!”,错误,错误];
foo4=[“这可能是真的!”,对,错];
foo5=[“这可能是真的!”,对,错];
//选择随机数组名
fooID=“foo”+随机数(1,5);
/*我该怎么做-
警报([0]);
[2] =正确;
*/
您可以简单地使用一个,因为您的数据是可编辑的,您需要一个随机数才能从中得到结果

函数getRandomElement(数组){ 返回数组[Math.floor(Math.random()*array.length)] } 变量foos=[ [“这是真的!”,对,错], [“这是假的!”,假的,假的], [“这可能是假的!”,假的,假的], [“这可能是真的!”,对,错], [“这可能是真的!”,对,错] ], 我 对于(i=0;i<10;i++){ log(getRandomElement(foos)[0]); }
.as console wrapper{max height:100%!important;top:0;}
您可以简单地使用an,因为您的数据是可编辑的,您需要一个随机数才能从中获得结果

函数getRandomElement(数组){ 返回数组[Math.floor(Math.random()*array.length)] } 变量foos=[ [“这是真的!”,对,错], [“这是假的!”,假的,假的], [“这可能是假的!”,假的,假的], [“这可能是真的!”,对,错], [“这可能是真的!”,对,错] ], 我 对于(i=0;i<10;i++){ log(getRandomElement(foos)[0]); }
.as控制台包装{max height:100%!important;top:0;}
由于变量是全局定义的,因此可以使用
窗口[/*数组变量标识符*/]

//这里是随机数生成器
//包含信息的数组
foo1=[“这是真的!”,真的,假的];
foo2=[“这是假的!”,假的,假的];
foo3=[“这可能是错误的!”,错误,错误];
foo4=[“这可能是真的!”,对,错];
foo5=[“这可能是真的!”,对,错];
//选择随机数组名
fooID=窗口[“foo”+1/*随机数(1,5)*/];
console.log(fooID)由于变量是全局定义的,因此可以使用
窗口[/*数组变量标识符*/]

//这里是随机数生成器
//包含信息的数组
foo1=[“这是真的!”,真的,假的];
foo2=[“这是假的!”,假的,假的];
foo3=[“这可能是错误的!”,错误,错误];
foo4=[“这可能是真的!”,对,错];
foo5=[“这可能是真的!”,对,错];
//选择随机数组名
fooID=窗口[“foo”+1/*随机数(1,5)*/];

console.log(fooID)基本上,您想要的内容可以通过使用来实现,因为您可以在属性名称中使用变量或任何其他有效的JS表达式元素

在您的示例中,foo1到foo6作为变量存在于全局名称空间中,这意味着它们都附加到浏览器中的
窗口
对象

因此,将要访问的变量的名称存储在一个变量中,例如name
accessor
,然后像这样访问相应的变量:

window[accessor]
//这里是随机数生成器
//包含信息的数组
foo1=[“这是真的!”,真的,假的];
foo2=[“这是假的!”,假的,假的];
foo3=[“这可能是错误的!”,错误,错误];
foo4=[“这可能是真的!”,对,错];
foo5=[“这可能是真的!”,对,错];
//选择随机数组名
fooID=窗口[“foo”+3/*随机数(1,5)*/];
/*我该怎么做-
警报([0]);
[2] =正确;
*/

基本上,您想要的内容可以通过使用来实现,因为您可以在属性名中使用变量或任何其他有效的JS表达式元素

在您的示例中,foo1到foo6作为变量存在于全局名称空间中,这意味着它们都附加到浏览器中的
窗口
对象

因此,将要访问的变量的名称存储在一个变量中,例如name
accessor
,然后像这样访问相应的变量:

window[accessor]
//这里是随机数生成器
//包含信息的数组
foo1=[“这是真的!”,真的,假的];
foo2=[“这是假的!”,假的,假的];
foo3=[“这可能是错误的!”,错误,错误];
foo4=[“这可能是真的!”,对,错];
foo5=[“这可能是真的!”,对,错];
//选择随机数组名
fooID=窗口[“foo”+3/*随机数(1,5)*/];
/*我该怎么做-
警报([0]);
[2] =正确;
*/
也许我甚至可以用一种完全不同的方式瞄准一个数组

var foo=[
[“这是真的!”,对,错],
[“这是假的!”,假的,假的],
[“这可能是假的!”,假的,假的],
[“这可能是真的!”,对,错],
[“这可能是真的!”,对,错]
];
var fooItem=foo[Math.trunc(Math.random()*5)];
console.log(footem)
也许我甚至可以用一种完全不同的方式瞄准一个数组

var foo=[
[“这是真的!”,对,错],
[“这是假的!”,假的,假的],
[“这可能是假的!”,假的,假的],
[“这可能是真的!”,对,错],
[“这可能是真的!”,对,错]
];
var fooItem=foo[Math.trunc(Math.random()*5)];

console.log(footem)虽然这是一个针对这种特定情况的简洁解决方案,但它没有意识到OP可能不知道括号表示法。虽然括号表示法和窗口对象相结合可能是一种解决方案,但它仅适用于具有窗口对象的系统,并且也仅适用于全局变量。因此,对于自己的变量使用带窗口的括号表示法不是一个好的解决方案,在任何可能的情况下都应避免使用括号表示法,这意味着在任何情况下。
窗口
上下文仅适用于a)浏览器和b)本triv