更改数组中的“关键”的JavaScript
问题描述:
这是我的数组的字符串更改数组中的“关键”的JavaScript
[
{
"id": 2,
"language": {
"name": "English",
"abbreviation": "EN"
}
]
要访问language.name
function get(arrName)
{
for(var k = 0 ; k< arr.length; k++)
{
console.log(arr[k].language.name); //English
}
}
在arr[k].language.name
,我希望把'language'
字符串作为动态的,我是从函数arrName
的参数中获得它。 所以,它应该是
function get(arrName)
{
for(var k = 0 ; k< arr.length; k++)
{
var dynamicArr = '.'+arrName+'.name';
console.log(arr[k]+dynamicArr);
}
}
这显示
[object Object].language.name;
如何获得实际的数组值?
答
您需要像访问数组一样访问对象属性,只需使用字符串作为键。像这样:
function get(arrName)
{
for(var k = 0 ; k< arr.length; k++)
{
console.log(arr[k][arrName].name);
}
}
答
console.log(arr[k][arrName].name);
它应该是,如果我记得正确。
随意看看这个dynamic access to an array in Javascript广泛的迭代代码。
尽管您对此做出了很高的评价。
乔纳森的回答是,你想什么,而是要解释你的问题,你正在尝试登录的'ARR [K]值''加代替dynamicArr'的实际阵列位置。 –
在循环'console.log(arr [k] [dynamicArr] .name)中使用关联数组;'' –