Javascript 通过字符串访问数组
我在访问数组时遇到问题。我想访问数组的值,但得到的只是数组的字符串名。我在网上搜索了一下,但没有发现与我的问题有关的东西。我简化了这个问题,看起来是这样的Javascript 通过字符串访问数组,javascript,Javascript,我在访问数组时遇到问题。我想访问数组的值,但得到的只是数组的字符串名。我在网上搜索了一下,但没有发现与我的问题有关的东西。我简化了这个问题,看起来是这样的 var pics = ["one","two","three"]; var index = 1; var name = "pics"; function changeContent(name) { var foo = name+'['+index+']'; alert(foo); } 我得到的只是 pics[1]
var pics = ["one","two","three"];
var index = 1;
var name = "pics";
function changeContent(name)
{
var foo = name+'['+index+']';
alert(foo);
}
我得到的只是
pics[1]
我想要的是pics[1]的值,即“2”。如何获取数组的值?为了不使用全局或
eval
从本地对象访问数组:
var arrays = {
pics: ["one", "two", "three"]
};
function changeContent(name) {
return arrays[name][index];
}
var index = 1,
name = "pics";
console.log(changeContent(name)); // "two"
为了不使用全局或
eval
从本地对象访问数组:
var arrays = {
pics: ["one", "two", "three"]
};
function changeContent(name) {
return arrays[name][index];
}
var index = 1,
name = "pics";
console.log(changeContent(name)); // "two"
如果您在全局范围内,您可以这样做:
var pics = ["one","two","three"];
var index = 1;
var name = "pics";
function changeContent(name)
{
var foo = window[name][index];
alert(foo);
}
如果您在全局范围内,您可以这样做:
var pics = ["one","two","three"];
var index = 1;
var name = "pics";
function changeContent(name)
{
var foo = window[name][index];
alert(foo);
}
尝试使用eval函数 而不是
alert(foo);
使用
尝试使用eval函数 而不是
alert(foo);
使用
可能重复的可能重复的。。