无法从JavaScript函数返回对象的属性

时间:2016-01-08 22:12:15

标签: javascript arrays

我有一个JavaScript函数:

function test(arr, index) {
    for (var i = 0; i < arr.length; i++) {
        console.log(arr[i].index);
    }
}

我这样称呼函数:

test(myArr, 'name')

但它会返回undefined。当我直接使用函数时,它会起作用:

for (var i = 0; i < myArr.length; i++) {
    console.log(myArr[i].name);
}

这是我的阵列:

var myArr = [{name: "hamed"}, {name: "hamed1"}]

我不认为在调用函数时我应该使用单引号但没有引号它也不起作用。

1 个答案:

答案 0 :(得分:9)

如果要通过变量访问属性,请使用括号表示法。这将评估变量,然后在对象中找到它。

function test(arr, index) {
    for (var i = 0; i < arr.length; i++) {
        console.log(arr[i][index]);
    }
}