ECMAScript 2021 中的 Object.fromEntries 方法详解
ECMAScript 2021 作为 JavaScript 的新版本,又增加了一些新的特性和方法,其中一个亮点就是 Object.fromEntries
方法。在本文中,我们将详细介绍这个方法及其使用方式,在开发中掌握它可以更加便捷地处理对象数据。
什么是 Object.fromEntries 方法
Object.fromEntries
是 ECMAScript 2021 新增的方法,它可以将一个由键值对数组转换成一个 Object,这样做的好处在于可以快速创建一个对象,省去手动输入键值对的繁琐过程。
const entries = [ ['foo', 'bar'], ['baz', 42] ]; const obj = Object.fromEntries(entries); console.log(obj); // {foo: "bar", baz: 42}
在上面的示例代码中,我们创建了一个由键值对数组 entries
,然后使用 Object.fromEntries
将其转换成了一个对象 obj
,obj
的输出结果为 {foo: "bar", baz: 42}
。这样便可以快速地创建一个对象,而不必手动输入键和值,特别是在一些重复的情况下,使用这个方法可以更加便捷。
Object.fromEntries 方法的使用方式
Object.fromEntries
方法的使用非常简单,只需要传入一个由键值对组成的二维数组,然后就可以转换成一个对象。
const entries = [ ['foo', 'bar'], ['baz', 42] ]; const obj = Object.fromEntries(entries); console.log(obj); // {foo: "bar", baz: 42}
上面的代码就展示了一个非常简单的使用场景,但是 Object.fromEntries
方法不只是这种简单的使用方式。如果我们将其与其他方法结合使用,就会有更多的变化。
与 Object.entries 方法结合使用
Object.entries
方法可以将对象转换成一个由键值对组成的数组,我们可以与 Object.fromEntries
结合使用,将这个数组转换成一个新的对象。
-- -------------------- ---- ------- ----- --- - - ---- ------ ---- -- -- ----- ------- - -------------------- ----- ------ - ---------------------------- -------------------- -- ----- ------ ---- ---
以上代码将对象 obj
转换成了一个由键值对组成的数组 entries
,接着使用 Object.fromEntries
将数组 entries
转换成了新的对象 newObj
。newObj
与原对象 obj
相同,两个对象的属性、键名和键值都相同。
与其他方法结合使用
由于 Object.fromEntries
方法可以接受一个键值对数组作为参数,并转换为一个对象,因此它可以与其他方法结合使用,更加便捷地处理数据。
const arr = [ { key: 'foo', value: 'bar' }, { key: 'baz', value: 42 }, ]; const newObj = Object.fromEntries(arr.map(i => [i.key, i.value])); console.log(newObj); // {foo: "bar", baz: 42}
以上代码将数组 arr
转换成一个由键值对组成的二维数组,然后使用 Object.fromEntries
方法将其转换成了一个新的对象 newObj
。这样就很方便地将数组转换成一个对象,且适用于一些需要处理重复数据的情况。
总结
在使用 ECMAScript 2021 中的 Object.fromEntries
方法后,我们可以非常方便地将由键值对数组转换成对象,而且还可以结合其他的方法使用。使用这个方法将会使我们的工作更加便捷,特别是在需要处理重复数据的情况下非常适用。希望这篇文章能够帮助你更好地理解和使用 Object.fromEntries
方法。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/64716b7d968c7c53b0f490e3