Javascript 从ES6中的对象数组中获取具有一个属性的数组

Javascript 从ES6中的对象数组中获取具有一个属性的数组,javascript,Javascript,我有这样一个数组: [ {foo: 1, bar: 2}, {foo: 3, bar: 4} ] 获取仅包含foo值的数组的最简洁的ES6方法是什么 预期结果将是: [1, 3] Array.prototype.map方法适用于将一个数组映射/转换为相同大小的另一个数组。传入一个函数,该函数将从数组中的一个元素转换为新元素。自2018年起,使用所谓的胖箭头语法为转换定义匿名函数被认为是“现代的”: const x = [{foo: 1, bar: 2}, {foo: 3, bar:

我有这样一个数组:

[
  {foo: 1, bar: 2},
  {foo: 3, bar: 4}
]
获取仅包含
foo
值的数组的最简洁的ES6方法是什么

预期结果将是:

[1, 3]

Array.prototype.map方法适用于将一个数组映射/转换为相同大小的另一个数组。传入一个函数,该函数将从数组中的一个元素转换为新元素。自2018年起,使用所谓的胖箭头语法为转换定义匿名函数被认为是“现代的”:

const x = [{foo: 1, bar: 2}, {foo: 3, bar: 4}]
x.map(entry => entry.foo)
尝试避免为循环编写
,也被认为是“现代的”。

使用该方法循环项目

简言之:

map()

-

该方法允许为数组的每个元素调用一次提供的回调函数。它将创建一个由映射元素组成的新数组。 您可以将
元素
索引
作为回调参数传递。后者是可选的(当回调中不需要它时)

这是一种在JavaScript中访问对象的干净方法。代码如下:

let数组=[
{foo:1,bar:2},
{foo:3,bar:4}
]
console.log(array.map(e=>e.foo))
您可以使用并通过使用返回此属性

var objects=[{foo:1,bar:2},{foo:3,bar:4}],
array=objects.map(({foo})=>foo);

console.log(数组)扩展lipp的答案:

const x = [{foo: 1, bar: 2}, {foo: 3, bar: 4}];
var y = x.map(entry => entry.foo);
在第一行中,创建了一个对象数组。
第二行使用缩小的lambda表达式从x数组返回foo属性数组,并将其分配给y。

data.map(({foo})=>foo)请使用搜索:)虽然此代码段可以解决问题,但它没有解释为什么或如何回答问题。请,因为这确实有助于提高你的文章质量。请记住,您将在将来回答读者的问题,这些人可能不知道您的代码建议的原因。标记者/审阅者:尽管结果是
[[1,3]]
,但这并没有回答问题。lipp的回答完全正确是的。我把一个阵列推进另一个阵列。现在修好了。