ECMAScript 2021 中的 Object.fromEntries 解析及其应用场景

阅读时长 4 分钟读完

ECMAScript 2021 中的 Object.fromEntries 解析及其应用场景

在 ECMAScript 2019 中,我们已经看到了 Object.entries() 的出现,它可以将一个对象转化为一个键值对数组。而在 ECMAScript 2021 中,我们又迎来了一个新的方法 Object.fromEntries(),它可以将一个键值对数组转化为一个对象。本文将详细解析 Object.fromEntries() 的用法和应用场景。

Object.fromEntries() 的用法

Object.fromEntries() 方法可以接收一个键值对数组作为参数,然后将其转化为一个对象。它的语法如下:

其中 iterable 是一个可迭代对象,它的每个元素都是一个键值对数组,例如:

我们可以调用 Object.fromEntries() 方法将 iterable 转化为一个对象:

需要注意的是,如果 iterable 中有重复的键名,后面的键值会覆盖前面的键值。例如:

Object.fromEntries() 的应用场景

  1. 将 Map 转化为对象

在我们使用 Map 存储数据时,有时候需要将其转化为对象。这时候就可以使用 Object.fromEntries() 方法,例如:

  1. 将键值对数组转化为对象

在我们处理数据时,有时候需要将键值对数组转化为对象。这时候就可以使用 Object.fromEntries() 方法,例如:

  1. 将对象转化为另一个对象

有时候我们需要将一个对象转化为另一个对象,这时候就可以使用 Object.fromEntries() 方法结合 Object.entries() 方法,例如:

在这个例子中,我们先使用 Object.entries() 方法将 obj1 转化为一个键值对数组,然后使用 map() 方法将每个值转化为大写,最后使用 Object.fromEntries() 方法将其转化为一个新的对象 obj2。

总结

Object.fromEntries() 方法可以将一个键值对数组转化为一个对象,它可以方便地将 Map 转化为对象,将键值对数组转化为对象,以及将一个对象转化为另一个对象。我们可以结合使用 Object.entries() 方法和 map() 方法来实现更加复杂的转化操作。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6613ce70d10417a22244a905

纠错
反馈