在 JavaScript 中,使用对象数组是一种常见场景。一项常见的任务是从每个对象中提取特定的属性值并创建一个包含这些值的数组。虽然自定义函数可以完成此任务,但还有更优雅和惯用的方法。
给定一个具有特定结构的对象数组,目标是从每个对象中提取一个字段(属性)对象并返回包含这些值的数组。例如,提取“foo”字段应该从以下对象数组中生成一个数组 [1, 3, 5]:
objArray = [ { foo: 1, bar: 2}, { foo: 3, bar: 4}, { foo: 5, bar: 6} ];
而不是使用传统的 for 循环和推送方法,考虑这些惯用的解决方案:
方法 1:带有箭头的 Array.map()函数
let result = objArray.map(a => a.foo);
方法2:带有对象解构的Array.map()
let result = objArray.map(({ foo }) => foo);
两种方法都使用Array.prototype.map() 方法,它使用提供的回调函数转换数组中的每个元素。在我们的例子中,回调函数从每个对象中提取指定的字段(“foo”)。 map() 函数返回一个包含转换后的元素的新数组,然后将其分配给结果变量。
有关 Array.prototype 的更多信息。 map(),参考 Mozilla 开发者网络 (MDN)文档:
[https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map](https://developer.mozilla.org/en-US/docs /Web/JavaScript/Reference/Global_Objects/Array/map)
以上是如何在 JavaScript 中高效地将属性值提取到数组中?的详细内容。更多信息请关注PHP中文网其他相关文章!