Javascript 在jQuery中动态调用数组名

Javascript 在jQuery中动态调用数组名,javascript,jquery,arrays,Javascript,Jquery,Arrays,我很肯定这个问题会得到否定的回答,因为很多人已经问过了。但是相信我,我已经阅读了每一个问题的每一个答案,没有任何帮助 我知道在jquery中可以像这样动态地放置数组键名:somearray1[“abc”+变量],但我不想这样。我想动态调用数组名称,如下所示: var i=1; console.log( "somearray" + i["abc" + variable] ) 有人能告诉我怎么可能吗?我无法将它放入另一个数组并调用它,因为我正在构建一个非常动态的脚本,所以我必须动态调用数组名 非常

我很肯定这个问题会得到否定的回答,因为很多人已经问过了。但是相信我,我已经阅读了每一个问题的每一个答案,没有任何帮助

我知道在jquery中可以像这样动态地放置数组键名:
somearray1[“abc”+变量]
,但我不想这样。我想动态调用数组名称,如下所示:

var i=1;
console.log( "somearray" + i["abc" + variable] )
有人能告诉我怎么可能吗?我无法将它放入另一个数组并调用它,因为我正在构建一个非常动态的脚本,所以我必须动态调用数组名


非常感谢您的帮助。

通常,您的阵列依赖于此

this["somearray" + i]["abc" + variable]
var-bob1=[1,2,3];
var name=“bob”;

log(这个[name+“1”][0])
我不确定您在示例中到底想问什么。是否要console.log保存在动态变化的“somearray”位置的值?如果是,数组位置是数字索引(例如
somearray[1]
),不能通过字符串访问

您是否尝试访问对象属性(例如,
someObject1[“abc”+变量]
)作为替代

如果您试图通过更改参数访问对象属性,则可能需要尝试使用ES2015模板文字语法

let i = 1;
let someObjectName = `someObject${i}`;
console.log( someObjectName[`abc${variable}`] );

这样,对象名称及其属性的连接将动态发生。我希望这会有所帮助。

您可以使用eval()作为最后的手段。但据我所知,由于安全原因,使用eval是不好的。您尝试过这个吗?如果我是一个数字,而不是一个数组或对象,你会怎么做?也许你需要澄清这个问题…@RickS是的,我看到了,但没有帮助。正如我所说的,我不能把它放在另一个数组或类似的东西中。我需要直接动态调用它。我会尝试一下并让您知道。非常感谢您的回答。这是否与
窗口[“somearray”+i][“abc”+变量]
相同?取决于您的范围。Windows是主作用域的一部分。这指的是本地作用域,第一个认为jquery要做的是创建自己的作用域。@GeraldChablowski非常感谢兄弟。是的,我看到了。事实上,现在是凌晨2点,我必须睡一觉,因为我已经两天没睡了。所以我真的没有力量去改变我所有的代码来测试它。但是非常感谢你的片段。