如何在 JavaScript 中将对象转换为数组

17 Mar 2025 | 4 分钟阅读

JavaScript 作为一种广泛且多样的编程语言,拥有大量将对象转换为数组的特性。这些方法是语言本身预定义的。让我们看看在 JavaScript 中将对象转换为数组的不同方法。

要在 JavaScript 中将一个对象转换为数组,您可以使用不同类型的方法。其中一些方法是 **Object.keys()、Object.values()** 和 **Object.entries()**。

请参考以下示例来理解上述方法。

方法 1:Object.keys()

输出

The Lion

在上面的示例代码中,我们使用了 Object.keys() 方法将 animal 对象的可枚举属性名称转换为数组。我们定义了变量 **animal**,其中包含 animal 对象的首字母和末字母,然后通过 Object.keys() 方法将其转换为数组。

方法 2:Object.values()

输出

['The', 'Lion']

在此方法中,我们使用了 Object.values() 方法来获取 animal 对象的属性值。Object.values() 方法将定义的 animal 对象转换为数组,并在控制台输出结果,如上所示。

方法 3:Object.entries()

输出

[['first', 'The '] , ['last', 'Lion'] ]

在此方法中,对象被转换为数组,如输出所示。Object.entries() 方法将对象的可枚举字符串属性转换为数组。输出之所以如此显示,是因为 Object.entries() 方法以更好的方式正确地定义了对象的每个方面,以便在调试时您可以注意到哪个属性被分配给了已定义对象的哪个字符串。

这些是将对象转换为数组的一些最常见的方法。上述方法也可以集体定义到一个代码片段中,并且这些方法也可以与对象的属性一起集体应用。它们都将被转换为相应的数组。请参考下面的示例,这些示例展示了将对象集体定义到一个片段中的用法。

在上面的代码片段中,我们集体定义了常量变量 Snakes,其属性定义为 **venom** 和 **attack**。我们为不同蛇的不同属性分配了不同的值。现在,您可以将所有上述讨论的方法与键、条目或值一起使用。

让我们看一些不同的编码示例,以更深入地了解 JavaScript 对象到数组的转换。请参考下面的代码片段。

示例 1

在这里,值将根据对象变量中定义的键的顺序显示。我们为不同的键值分配了不同的数字,并且 convert 变量将使用 Object.keys() 方法映射这些键,之后它将在控制台中以已定义对象变量的数组形式显示。

示例 2

在这里,我们定义了一个名为 **superHeroes** 的变量,其对象值如上所示。正如我们已经学习了在 JavaScript 中将对象转换为数组的三种方法一样,我们在这里应用相同的概念将其转换为数组。

示例 3

输出

{ one: 1, two: 2 }

在上面的示例中,我们采用了一个数组及其各自的属性,并用它们的值进行了定义。在这里,Object.entries() 方法会将对象的这些属性转换为数组,如输出所示。

总结

在本文中,我们遇到了 JavaScript 中可用于将具有某些不确定或确定属性的对象转换为不同类型数组的各种方法。我们还遇到了一些常用方法,如 keys、objects 和 entries,以及其他一些方法。一旦您考虑了这些方法的用途,它们就非常有用,因为在大多数情况下,需要以关联或排序的方式获得输出。我们也可以通过将这些对象转换为数组来定义它们,以便进行抽象方法,从而只显示所需的数据而不显示其他数据。