从 JavaScript 数组中的对象中检索键和值


在给定的问题中,我们需要借助 Javascript 从数组中的对象中检索键和值。因此,在这里我们将借助 Javascript 中对象类提供的两种方法来检索数组中对象的键和值。

理解问题陈述

问题陈述是从给定的数组中的对象中检索键和值,借助 Javascript。因此,在 Javascript 中,对象是属性的集合,其中每个属性都是键值对。为了从数组中的对象中检索键和值,我们将使用对象类的两种 Javascript 方法。

上述问题的逻辑

为了获取对象的键及其对应的值,我们可以使用 Javascript 中对象类提供的两种方法。Object.keys(obj) 和 Object.values(obj) 是返回键数组和值数组的方法。为了从数组中的每个对象中获取键和值,我们可以使用循环遍历数组,并为每个对象调用 Object.keys 和 Object.values 方法。

在代码中,我们将初始化一个对象数组,并使用 Object.keys 获取数组中第一个对象的键,然后我们将循环遍历数组中的每个对象。对于每个对象,我们将使用 Object.values 获取值,并将输出作为每次迭代的对象、键和值。

算法

步骤 1:因为我们必须从数组中的对象中检索键和值,所以首先我们将定义一个对象数组。用于检索键和值。

步骤 2:定义对象后,接下来我们将使用 Object.keys 方法获取键。

步骤 3:现在我们将不得不使用循环来迭代数组中的每个对象。

步骤 4:在上述循环内,我们将使用 Object.values 方法获取每个对象的值。

步骤 5:最后,我们将打印函数中每次迭代的对象、键和值。

示例

const array = [
  {name: 'Amit', age: 30},
  {name: 'Ajay', age: 25},
  {name: 'Ankit', age: 35}
];

// get the keys from first object in array
const keys = Object.keys(array[0]);

for (const obj of array) {
  // get values for current object
  const values = Object.values(obj);
  console.log(`Object: ${JSON.stringify(obj)}, Keys: ${keys}, Values: 
${values}`);
}

输出

Object: {"name":"Amit","age":30}, Keys: name,age, Values: Amit,30
Object: {"name":"Ajay","age":25}, Keys: name,age, Values: Ajay,25
Object: {"name":"Ankit","age":35}, Keys: name,age, Values: Ankit,35

复杂度

获取函数中的键、值和对象的时间复杂度为 O(n^2)。这里 n 是数组中对象的个数。因为我们在其中嵌套了一个循环,我们将遍历数组中的每个对象,然后遍历对象中的每个键。空间复杂度为 O(n),因为我们将为数组中的每个对象创建一个新的值数组。

结论

在上述算法中,我们展示了如何使用 Javascript 从数组中的对象中获取键和值。我们分别使用 Object.keys 和 Object.values 方法获取键和值。此算法的时间和空间复杂度分别为 O(n^2) 和 O(n)。

更新于:2023年8月16日

7K+ 次浏览

启动你的职业生涯

完成课程获得认证

开始
广告
© . All rights reserved.