如何使用 JavaScript 将对象数组转换为数组?
我们可以使用 Object.values() 方法、Array push() 方法和 for…of 循环来使用 JavaScript 将对象数组转换为数组。首先,我们使用 for…of 循环访问每个对象,然后应用 Object.values() 方法来访问单个对象的 value。然后使用 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 循环用于遍历数组或任何可迭代对象的 value。要使用 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>
广告
数据结构
网络
关系数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP