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

Vla*_*kyi 7 javascript arrays loops object

可以说,我有一个这样的对象数组:

var students = [{
    name: 'Nick',
    achievements: 158,
    points: 14730
}, {
    name: 'Jordan',
    achievements: '175',
    points: '16375'
}, {
    name: 'Ramon',
    achievements: '55',
    points: '2025'
}];
Run Code Online (Sandbox Code Playgroud)

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

谢谢.

Nin*_*olz 18

你可以参加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);
Run Code Online (Sandbox Code Playgroud)
<pre id="out"></pre>
Run Code Online (Sandbox Code Playgroud)


n-d*_*dru 5

使用forEach

var a = [];
students.forEach(function(obj){
    a.push(obj.name);
})
console.log(a);
Run Code Online (Sandbox Code Playgroud)

输出:

 ["Nick", "Jordan", "Ramon"]
Run Code Online (Sandbox Code Playgroud)