JavaScript 如何从对象数组中提取属性值作为数组
在这篇文章中,我们将通过一些示例来了解如何在JavaScript中从对象数组中提取属性值作为数组。
前提条件: JavaScript中的对象数组。
示例:
Input:
[
{
apple: 2,
mango: 4,
},
{
apple: 3,
mango: 6,
},
{
apple: 7,
mango: 11,
},
]
Output: [2, 3, 7]
说明:
- 从包含多个对象的数组中,我们首先必须自己选择所需的键。
- 然后,在选择所需的键之后,我们将必须选择传递到数组中的每个对象中与键对应的所有值。
- 然后,在输出中,我们必须以数组的形式打印与键对应的值。
理解了上面示例中所需的任务后,让我们快速查看以下方法,通过这些方法,我们可以理解并解决上述任务。
方法1:
- 创建一个包含我们的主要对象数组的参数的辅助函数。
- 在函数内部创建一个临时数组,其中将存储和稍后打印结果。
- 然后使用for-of循环迭代该对象数组的值,然后选择所选键的值。
- 在获取值后,将这些值存储在临时数组中,从函数返回该值,然后将其作为输出打印出来。
示例: 以下是上述方法的实现。
JavaScript
let desiredValue = (fruits_quantity) => {
let output = [];
for (let item of fruits_quantity) {
output.push(item.apple);
}
return output;
};
let fruits_quantity = [
{
apple: 2,
mango: 4,
},
{
apple: 3,
mango: 6,
},
{
apple: 7,
mango: 11,
},
];
let result = desiredValue(fruits_quantity);
console.log(result);
输出:
[ 2, 3, 7 ]
方法2:
- 创建一个帮助函数,它包含两个参数:第一个参数是我们的主数组对象,第二个参数是我们想要的键名。
- 如前一方法所示,再次遍历数组对象,但这次使用数组的map()函数。
- 然后以数组形式返回值。
示例: 下面是上述方法的实现。
Javascript
let desiredValue = (fruits_quantity, desired_key) => {
let desiredValue = fruits_quantity.map((element) => element[desired_key]);
return desiredValue;
};
let fruits_quantity = [
{
apple: 2,
mango: 4,
},
{
apple: 3,
mango: 6,
},
{
apple: 7,
mango: 11,
},
];
// Corresponding to this key values
// (as an fruits_quantity) would be obtained...
let desired_key = "apple";
let result = desiredValue(fruits_quantity, desired_key);
console.log(result);
输出:
[ 2, 3, 7 ]
极客教程