ES10 中更新的 Object.fromEntries() 方法详解

在 ES2019 中,新增了一个 Object.fromEntries() 方法,它可以将一个由键值对数组形式表示的对象转换为一个真正的对象。这个方法的出现,为前端开发带来了很多方便和效率。

方法介绍

Object.fromEntries() 方法是一个静态方法,它将一个键值数组转换成一个对象。这些数组可以是 Map 或者是其他可以迭代的对象。

语法

Object.fromEntries(iterable)

参数:

  • iterable:必需。表示需要转换成对象的可迭代序列。

返回值:

  • 返回从可迭代对象创建的新对象。

使用场景

Object.fromEntries() 方法适用于以下场景:

  1. 将 Map 转换成对象

使用 Map 来表示键值对是很常见的。但是如果需要将它转换成对象,就需要一个迭代方法来实现。这时,Object.fromEntries() 就成为了一个很好的选择。

----- --- - --- -----
  -------- -------
  ------- ---
---

----- --- - ------------------------

---------------- -- ------ ------ ---- ---
  1. 将数组中的键值对转换成对象

如果有一个数组,其中每一项都是一个键值对,也可以使用 Object.fromEntries() 方法将它转换成对象。

----- --- - --------- ------- ------- -----

----- --- - ------------------------

---------------- -- ------ ------ ---- ---

注意事项

需要注意的是,如果传入的配对数组中有重复的键,则 Object.fromEntries() 将始终使用最后一个值。例如:

----- --- - --------- ------- ------- ---- -------- ----------

----- --- - ------------------------

---------------- -- ------ -------- ---- ---

兼容性

Object.fromEntries() 方法是 ES2019 新增的方法,如果需要在旧版本的浏览器中使用,可以使用 core-js 等 polyfill 库,或者手动实现一个兼容的方法。

总结

Object.fromEntries() 方法在 ES10 中的出现,为前端开发带来了非常方便和高效的功能。它可以将 Map 和由键值对数组形式表示的对象转换为一个真正的对象,使得开发者们能够更便捷地操作对象。在实际开发中,我们可以根据自己的需求尝试使用 Object.fromEntries() 方法,从而提高开发效率和代码质量。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/664649f4d3423812e44655f9