Jquery 使用数组从对象检索值

Jquery 使用数组从对象检索值,jquery,Jquery,我正在编写方法代码,其中我必须使用动态数组遍历json对象。我的代码如下: var tableHeaders = ["id", "name", "status"]; var item = { id: 1, name: "test name", status: true, email: "test@gmail.com" } console.log(item.id); // works well --> 1 console.log(

我正在编写方法代码,其中我必须使用动态数组遍历json对象。我的代码如下:

var tableHeaders = ["id", "name", "status"];    
var item = {
    id: 1,
    name: "test name",
    status: true,
    email: "test@gmail.com"
}    
console.log(item.id);    // works well --> 1    
console.log(tableHeaders[0]); // works well --> id    
console.log(item.tableHeaders[0]);  // not works
以下是JSFIDLE:
请建议我,如何使用数组元素获取项目的值?谢谢

由于您的财产名称是动态的,因此您必须使用以下名称,而不是:


由于您的属性名称是动态的,因此您必须使用而不是:

应该是

item[ tableHeaders[0] ];
。。。也就是说,使用按属性名称访问属性。请注意,此处使用任何复杂表达式,例如:

item[ 'e' + 'mail' ]; // the same as item.email
应该是

item[ tableHeaders[0] ];
。。。也就是说,使用按属性名称访问属性。请注意,此处使用任何复杂表达式,例如:

item[ 'e' + 'mail' ]; // the same as item.email

使用动态键时,需要使用
[]
表示法而不是
表示法

console.log(item[tableHeaders[0]]);

演示:

在使用动态键时,需要使用
[]
符号,而不是
符号

console.log(item[tableHeaders[0]]);

演示:

选项卡标题不是项的值。试一试

var tableHeaders = ["id", "name", "status"];    
var item = {
    id: 1,
    name: "test name",
    status: true,
    email: "test@gmail.com",
    tableHeaders: tableHeaders // define "tableHeaders" as value of "item"
}   
谢谢@xec的评论

答案已经在这里了,但无论如何:

var key = tableHeaders[0];  // the key for the value you want to extract from items.
var value = item[key];      // get the value from item based on the key defined 
                            // in table headers using the [Bracket notation][1] 
                            // (@Frédéric Hamidi).

Tabheaders不是项的值。试一试

var tableHeaders = ["id", "name", "status"];    
var item = {
    id: 1,
    name: "test name",
    status: true,
    email: "test@gmail.com",
    tableHeaders: tableHeaders // define "tableHeaders" as value of "item"
}   
谢谢@xec的评论

答案已经在这里了,但无论如何:

var key = tableHeaders[0];  // the key for the value you want to extract from items.
var value = item[key];      // get the value from item based on the key defined 
                            // in table headers using the [Bracket notation][1] 
                            // (@Frédéric Hamidi).

我相信他希望
1
返回(id属性的值)我相信他希望
1
返回(id属性的值)使用括号符号而不是点来获取。谢谢。用括号符号代替圆点。谢谢,好的。用括号符号而不是点来表示。谢谢,好的。用括号符号而不是点来表示。谢谢