ES10 中如何使用对象的 fromEntries 方法

阅读时长 3 分钟读完

在 JavaScript 的 ES10 标准中,新增了一个对象方法 fromEntries,它能够将一个由键值对数组转换成对象。这篇文章将会介绍 fromEntries 方法的用法与一些示例,以及应用它能够解决的问题。

1. fromEntries 方法的用法

Object.fromEntries() 方法接受一个包含键值对的二元数组(例如 [ [ key1, value1 ], [ key2, value2 ] ] ),并返回一个新的对象。这个方法常常用于将 map 类型转换成对象类型。

语法:

参数:

  • iterable:包含键值对数组的二元数组。

返回值:

  • 返回一个新的对象。

需要注意的是,fromEntries 方法需要在支持 ECMAScript 2019 的浏览器中才能使用。如果你需要更广泛地支持旧版的浏览器,请使用一个 polyfill 或者自己实现一个简单的兼容方法。

2. 使用 fromEntries 方法

2.1. 将 map 转换成对象

一个 map 字典类型,键和值都是字符串:

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

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

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

2.2. 对象的键值交换

JavaScript 中常常需要对一个对象进行键值交换,fromEntries 配合 entries 方法进行操作:

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

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

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

2.3. 数组的快速去重

使用 Set 对一个数组进行去重是 JavaScript 常见的操作,这里介绍一种全新的方式:fromEntries 配合 entries 方法和 Set 对象:

3. 总结

以上就是 fromEntries 方法的使用方式以及一些示例。对于从 map 转换成对象,对象的键值交换,甚至是数组的快速去重,这个方法提供了一种简单易用的解决方案。由于这个方法在许多浏览器中还未实现,建议在使用前做好兼容性方案。

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

纠错
反馈