Javascript 使用变量/参数作为数组标识符
如果我手动输入数组标识符,它将工作,但是使用函数中的参数它将不工作。我知道问题在哪里,但不知道我可以用什么替换“.key”,以便它使用参数值Javascript 使用变量/参数作为数组标识符,javascript,arrays,Javascript,Arrays,如果我手动输入数组标识符,它将工作,但是使用函数中的参数它将不工作。我知道问题在哪里,但不知道我可以用什么替换“.key”,以便它使用参数值 var stuff = [ { "name": "Alex", "food": "Pizza"}, { "name": "Karl", "food": "Lasagne"}, { "name": "Franz", "food": "Potato salad"} ] function getSpecificValue(key, value, getk
var stuff = [
{ "name": "Alex", "food": "Pizza"},
{ "name": "Karl", "food": "Lasagne"},
{ "name": "Franz", "food": "Potato salad"}
]
function getSpecificValue(key, value, getkey, arr) {
for (var i=arr.length;i--;) {
if (arr[i].key == value) { //this should use the parameter "key" ("name")
return arr[i].getkey; //this should use the parameter "getkey" ("food")
}
}
}
alert( getSpecificValue('name', 'Alex', 'food', stuff) ); //alert "Pizza"
始终可以使用“括号”或“数组”符号访问对象属性:
for (var i=arr.length;i--;) {
if (arr[i][key] == value) { //this should use the parameter "key" ("name")
return arr[i][getkey]; //this should use the parameter "getkey" ("food")
}
}
您正在寻找“括号符号”,请参见此处,好的,如果(arr[i][key]==value){return arr[i][getkey];}谢谢,如果不是注释,我会接受您的答案;)谢谢:)@elclanrs的评论已经为我提供了我想要的东西。但我会接受你的回答,因为任何人可能会偶然发现这一页。