我希望能够通过使用字符串来引用数组,例如:
var arrayName = "people";
var people = [
'image47.jpeg',
'image48.jpeg',
'image49.jpeg',
'image50.jpeg',
'image52.jpeg',
'image53.jpeg',
'image54.jpeg',
'image55.jpeg',
]
function myFunc (arrayName)
{
//arrayName is actually just a string that evaluates to "people", which then in turn would reference the var people, which is passed in.
}
关于如何做到这一点有什么想法吗?对不起,如果我遗漏了一些明显的东西。
最佳答案
您可以像这样简单地创建一个全局字典:
var people = ['image47.jpeg', 'image48.jpeg'];
var cars = ['image3.png', 'image42.gif'];
var global_arrays = {
people: people,
cars: cars
};
function myFunc(arrayName) {
var ar = global_arrays[arrayName];
// Do something with ar
}
请注意,myFunc 的第一行清楚地表明,这只是让 myFunc
首先接受数组本身的一种复杂方式。我强烈建议你这样做,就像这样:
function myFunc(ar) {
// Do something with ar
}
myFunc(people);
这意味着您的代码可以被任何其他人(例如,想要渲染长颈鹿的第三方插件)重用,并且不需要任何全局变量。
关于javascript - 如何在 jQuery 中使用另一个变量按名称引用一个变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9780493/