Object.fromEntries 的作用是什么?

推荐答案

Object.fromEntries 是 ECMAScript 2019 (ES10) 引入的一个静态方法,用于将一个键值对列表(通常是一个二维数组)转换为一个对象。它接收一个可迭代对象(如数组)作为参数,其中每个元素都是一个包含两个元素的数组,第一个元素是键,第二个元素是值。Object.fromEntries 会将这些键值对转换为对象的属性和值。

示例代码

本题详细解读

1. 方法定义

Object.fromEntries(iterable) 方法接收一个可迭代对象 iterable 作为参数。这个可迭代对象中的每个元素都应该是一个包含两个元素的数组,第一个元素是键,第二个元素是值。

2. 参数

  • iterable: 一个可迭代对象,通常是数组,其中每个元素都是一个包含两个元素的数组,第一个元素是键,第二个元素是值。

3. 返回值

  • 返回一个新对象,该对象的属性由 iterable 中的键值对构成。

4. 使用场景

  • Map 转换为对象:

  • URLSearchParams 转换为对象:

5. 注意事项

  • 如果 iterable 中的某个元素不是包含两个元素的数组,或者键不是字符串或 Symbol 类型,可能会导致错误或意外的结果。
  • Object.fromEntriesObject.entries 的逆操作,Object.entries 将对象转换为键值对数组,而 Object.fromEntries 将键值对数组转换回对象。

6. 兼容性

  • Object.fromEntries 是 ES10 引入的新特性,因此在较旧的 JavaScript 环境中可能不被支持。如果需要在不支持的环境中使用,可以考虑使用 polyfill 或手动实现类似的功能。
纠错
反馈