如何从对象数组中获取键值列表 - JavaScript

时间:2015-06-29 13:40:50

标签: javascript arrays loops object

让我们说,我有一个像这样的对象数组:

var students = [{
    name: 'Nick',
    achievements: 158,
    points: 14730
}, {
    name: 'Jordan',
    achievements: '175',
    points: '16375'
}, {
    name: 'Ramon',
    achievements: '55',
    points: '2025'
}];

如何循环(如果必须),以便获得某些键值的列表。 让我们说一下所有名字的清单。

感谢。

2 个答案:

答案 0 :(得分:11)

您可以Array.map()。此方法返回一个数组,其中包含返回的回调元素。它期望所有元素都返回一些东西。如果未设置,则会返回undefined



var students = [{
    name: 'Nick',
    achievements: 158,
    points: 14730
}, {
    name: 'Jordan',
    achievements: '175',
    points: '16375'
}, {
    name: 'Ramon',
    achievements: '55',
    points: '2025'
}];
var nameArray = students.map(function (el) { return el.name; });
document.getElementById('out').innerHTML = JSON.stringify(nameArray, null, 4);

<pre id="out"></pre>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

使用forEach

var a = [];
students.forEach(function(obj){
    a.push(obj.name);
})
console.log(a);

输出:

 ["Nick", "Jordan", "Ramon"]