ECMAScript 2019 在语言规范上增加了一些新特性,其中 Object.fromEntries 就是其中一个有用的新方法。这个方法主要是用来从键值对数组中创建一个新的对象。
语法及参数
Object.fromEntries() 方法的语法如下:
Object.fromEntries(iterable);
其中,iterable 参数必须是可迭代对象,例如数组或者 Map 等对象。
使用方法
Object.fromEntries() 方法可以方便地将键值对数组转换为对象。举个例子,下面的代码可以将数组中的对象转换为一个新对象:
const arr = [['a', 1], ['b', 2], ['c', 3]]; const obj = Object.fromEntries(arr); // obj: { a: 1, b: 2, c: 3 }
该方法也可以通过 Map 转换成对象。比如,使用 Map 对象来创建一个新对象,如下:
const map = new Map([ ['foo', 'bar'], ['baz', 42] ]); const obj = Object.fromEntries(map); // obj: { foo: 'bar', baz: 42 }
示例代码
下面的示例演示了如何将对象转换为数组,然后将其转换为一个新对象。
const obj = {a: 1, b: 2, c: 3}; // 将对象转换为键值对数组 const arr = Object.entries(obj); // arr: [['a', 1], ['b', 2], ['c', 3]] // 将键值对数组转换为新对象 const newObj = Object.fromEntries(arr); // newObj: {a: 1, b: 2, c: 3}
总结
在 ECMAScript 2019 中,Object.fromEntries() 方法可以方便地将键值对数组转换成新的对象。除此之外,该方法还可以与 Map 对象一起使用。此外,该方法还可以帮助我们简化代码,提高程序的可读性。
有趣的是,该方法有很深的指导意义,因为它可以让我们清楚地看到如何快速地将一个数据结构转换成另一个数据结构,这在实际的项目中非常有用。因此,在学习 JavaScript 时,我们应当重视这个方法,掌握它的使用,并在编写代码时灵活运用。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/658ff5adeb4cecbf2d581958