ES10 中使用 Object.fromEntries 方法处理对象

介绍

在 ES10 中,我们可以使用 Object.fromEntries 方法来创建新的对象。这个方法唯一的参数是一个包含键值对数组的可迭代对象(如 Map,Array 等),并返回一个新对象。

Object.fromEntries 可以帮助我们在处理对象时更加简单方便。在使用这个方法时,我们可以先将一个对象转化为键值对的数组,对数组进行操作后,再将其转换回对象形式。

语法

参数:

  • iterable:包含键值对数组的可迭代对象,如 Map,Array 等。

返回值:

  • 一个由给定数组中的键值对生成的新对象。

示例

示例一

我们以一个简单的对象为例,演示如何使用 Object.fromEntries 处理对象。

const obj = { a: 1, b: 2, c: 3 };
const entries = Object.entries(obj);
// entries = [ ['a', 1], ['b', 2], ['c', 3] ]

const newObj = Object.fromEntries(entries);
// newObj = { a: 1, b: 2, c: 3 }

在上面的示例中,我们首先使用 Object.entries 方法将一个对象转换为一个包含键值对的数组,然后再将这个数组作为参数传递给 Object.fromEntries 方法,生成一个新的对象。

示例二

我们可以使用 Object.fromEntries 方法对一个对象的键值对进行过滤操作,只选取部分键值对生成新对象。

const obj = { a: 1, b: 2, c: 3 };
const selected = ['a', 'c'];
const entries = Object.entries(obj).filter(([key, value]) => selected.includes(key));

const newObj = Object.fromEntries(entries);
// newObj = { a: 1, c: 3 }

在上面的示例中,我们使用 Object.entries 方法将一个对象转换为一个包含键值对的数组,然后根据 selected 数组过滤需要选取的键值对,再使用 Object.fromEntries 方法生成一个新的对象。

指导意义

Object.fromEntries 方法可以帮助我们以更加便捷的方式操作对象。我们可以使用 Object.entries 方法将一个对象转化为键值对的数组,然后对数组进行操作,再将其转换回对象形式。

在实际开发中,我们可以使用 Object.fromEntries 方法帮助我们完成一些常见的对象操作,如过滤、映射等。

总结

ES10 中新加入了 Object.fromEntries 方法,用于将键值对数组转化为对象。这个方法可以帮助我们以更加便捷的方式处理对象,完成一些常见的操作,如过滤、映射等。虽然我们可以手动实现这些操作,但使用 Object.fromEntries 方法可以减少冗余代码,提升代码的可读性和可复用性。

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


纠错
反馈