在ECMAScript 2019中,新引入了 fromEntries() 方法,它允许我们将一个由键值对组成的数组转换为一个对象。这个新的特性能够极大地简化我们处理数据的方式,特别是在处理数据集合方面。
语法
fromEntries() 方法的语法是:
Object.fromEntries(iterable)
参数 iterable
是一个可迭代的对象,比如一个数组,它包含了若干个键值对。这个方法会将它们转换为一个新的对象,并且这个新对象的键值对顺序和原数组中的顺序相同。
示例
让我们来看看该方法的用例,具体解释一下它的操作原理。
-- -------------------- ---- ------- ----- --- - - -------- ------- ------- ---- ---------- -------- ------------ ------------- -- ----- --- - ------------------------ ----------------- -- ------- -- - -- ----- ------ -- ---- --- -- ------- ------- -- --------- ------------ ---
在这个例子中,我们创建了一个包含四个键值对的数组名 arr
。然后我们将该数组作为参数传递给 fromEntries() 方法,并给返回的对象命名为 obj
。最后,我们打印出这个新的对象,可以看到它经过了正确的转换。
这里我们还可以进一步地尝试使用该方法。假设我们要将对象转换为数组,这个时候我们就可以通过这个特性重新构建一个带有键值对的数组:
-- -------------------- ---- ------- ----- --- - - ----- ------ ---- --- ------- ------- --------- ------------ -- ----- --- - -------------------- ----------------- -- ------- -- - -- -------- ------- -- ------- ---- -- ---------- -------- -- ------------ ------------- -- -
在这个例子中,我们先定义了一个对象 obj
,它包含了四个键值对。然后我们调用 Object.entries() 方法将它转化成了一个键值对的数组 arr
。接着我们再次调用 fromEntries() 方法并将该数组传递给它,从而实现了一个由对象转化的数组再转化为对象的操作。
总结
在 ECMAScript 2019 中,新引入的 fromEntries() 方法可以很方便地将键值对数组转换为对象,它的用法通过上述示例得到了很好的说明。这个特性的引入大大简化了我们处理数据的方式。在实际开发中,我们可以将一些需要大量处理数据的操作,尤其是数据集合处理操作,都用这个新特性来实现。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6477fa88968c7c53b04430e3