介绍
在 ES10 中,我们可以使用 Object.fromEntries 方法来创建新的对象。这个方法唯一的参数是一个包含键值对数组的可迭代对象(如 Map,Array 等),并返回一个新对象。
Object.fromEntries 可以帮助我们在处理对象时更加简单方便。在使用这个方法时,我们可以先将一个对象转化为键值对的数组,对数组进行操作后,再将其转换回对象形式。
语法
Object.fromEntries(iterable)
参数:
- 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