如何使用 JavaScript 将 Object 数组转换为数组?

我们可以使用 Object.values() 方法、Array puch() 方法和 for...of 循环将 Object 的数组转换为 JavaScript 数组。首先,我们使用 for...of 循环访问每个对象,然后应用 Object.values() 方法来访问单个对象的值。然后使用 Array Push() 方法将值添加到数组中。在本文中,我们将详细讨论这种方法。

让我们看一下示例以了解问题。

你已经给定了一个对象数组,任务是将对象数组转换为对象值数组。这是我们想要实现的示例。

给定对象数组 -

let carObj = [
   { name: "John", car: "Ford" },
   { name: "Mark", car: "BMW" },
   { name: "Ben", car: "Toyota" }
] 
登录后复制

应转换为 -

let carObj = ["John", "Ford", "Mark", "BMW", "Ben", "Toyota" ] 
登录后复制

有多种方法可以实现这一目标。其中一些是 -

  • 使用 for...of 循环

  • 使用 array.map 方法

使用 for...of 循环

for...of 循环用于迭代数组或任何可迭代对象的值。要使用 for...of 循环将对象数组转换为数组,我们使用以下步骤。

步骤

  • 创建一个空的空间来存储结果值。

  • 使用 for...of 循环遍历对象数组

  • 我们知道数组的项是我们想要其值的对象。

  • 通过 array.push 和 Object.values() 方法将当前对象的值压入空数组。

示例

在此示例中,我们有一个对象数组。这些对象包含名称和汽车模式。我们提取这些值并使用 for..of 循环将它们分配到单个数组中。

<html>
<head>
   <title>How to convert Object’s array to an array using JavaScript?</title>
</head>
<body>
   <h3 id="demo">Converting Object’s array to an array using for...of loop</h3>
   <script>
      
      // The car object
      let carObj = [
         { name: "John", car: "Ford" },
         { name: "Mark", car: "BMW" },
         { name: "Ben", car: "Toyota" }
      ]
      
      // Initialize an empty array
      let arr = [];
      
      // Loop through the car object
      for (i of carObj) {
         
         // Push the values of every object into arr
         arr.push(...Object.values(i))
      }
      
      // Print the arr
      document.write("Final Array: " + arr) 
   </script>
</body>
</html>
登录后复制

使用Array.map()方法

Array.map() 方法对数组的每个元素调用一个函数,然后返回一个新数组。要使用 Array.map() 方法将对象数组转换为数组,我们使用以下步骤。

  • 对对象数组应用map方法。

  • 每次迭代后返回您要提取的键的值。

  • 您将获得特定键的所有值的数组。

示例

在此示例中,我们有一个对象数组。这些对象包含名称和汽车模式。我们将所有汽车提取到一个单独的数组中,并将所有名称提取到一个单独的数组中。

<html>
<head>
   <title>Example- How to convert Object's array to an array using JavaScript</title>
</head>
<body>
   <h3 id="demo">Converting Object's array to an array using Array.map() method</h3>
   <script>
      
      // The car object
      let carObj = [
         { name: "John", car: "Ford" }, 
         { name: "Mark", car: "BMW" },
         { name: "Ben", car: "Toyota" }
      ]
      let nameArr = carObj.map((item) => item.name)
      let carArr = carObj.map((item) => item.car)
      
      // Print the Arrays
      document.write("Names Array : " + nameArr + "<br>")
      document.write("Cars Array : " + carArr)
   </script>
</body>
</html>
登录后复制

以上就是如何使用 JavaScript 将 Object 数组转换为数组?的详细内容,转载自php中文网

点赞(748) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部