在 ES11 中,新增了一个 Object.fromEntries()
方法,它可以将一个由键值对组成的数组转化为一个对象。这个方法的出现,可以方便我们将数组转化为对象,同时也可以用于将 Map 转化为对象。
语法
----------------------------
iterable
:一个可迭代对象,其中每个元素都是一个表示键值对的数组。
示例
下面是一个将数组转化为对象的示例:
----- --- - --------- ------- ------- ---- ---------- --------- ----- --- - ------------------------ ----------------- -- ------ ------ ---- --- ------- -------
可以看到,Object.fromEntries()
方法将一个由键值对组成的数组转化为了一个对象。
下面是一个将 Map 转化为对象的示例:
----- --- - --- ----- -------- ------- ------- ---- ---------- ------- --- ----- --- - ------------------------ ----------------- -- ------ ------ ---- --- ------- -------
可以看到,Object.fromEntries()
方法同样可以将 Map 转化为对象。
应用场景
Object.fromEntries()
方法可以方便地将数组或 Map 转化为对象,这在实际开发中非常有用。例如,我们可以使用它来将 URL 参数转化为对象:
----- --- - --------------------------------------------------- ----- ------ - --- ---------------------------- ----- --- - --------------------------- ----------------- -- ------ ------ ---- ----- ------- -------
可以看到,Object.fromEntries()
方法非常方便地将 URL 参数转化为了一个对象。
注意事项
Object.fromEntries()
方法不会对原数组或 Map 进行修改,它会返回一个新的对象。- 如果数组中有重复的键名,则后面的值会覆盖前面的值。
- 如果数组中有非数组元素,则会抛出 TypeError。
总结
Object.fromEntries()
方法是 ES11 中新增的一个非常实用的方法,它可以方便地将数组或 Map 转化为对象。在实际开发中,我们可以使用它来处理各种数据结构,使开发变得更加便捷。
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/65ffc811d10417a222b05f9f