在 ES2019 中,新增了一个 Object.fromEntries() 方法,它可以将一个由键值对数组形式表示的对象转换为一个真正的对象。这个方法的出现,为前端开发带来了很多方便和效率。
方法介绍
Object.fromEntries() 方法是一个静态方法,它将一个键值数组转换成一个对象。这些数组可以是 Map 或者是其他可以迭代的对象。
语法
Object.fromEntries(iterable)
参数:
- iterable:必需。表示需要转换成对象的可迭代序列。
返回值:
- 返回从可迭代对象创建的新对象。
使用场景
Object.fromEntries() 方法适用于以下场景:
- 将 Map 转换成对象
使用 Map 来表示键值对是很常见的。但是如果需要将它转换成对象,就需要一个迭代方法来实现。这时,Object.fromEntries() 就成为了一个很好的选择。
----- --- - --- ----- -------- ------- ------- --- --- ----- --- - ------------------------ ---------------- -- ------ ------ ---- ---
- 将数组中的键值对转换成对象
如果有一个数组,其中每一项都是一个键值对,也可以使用 Object.fromEntries() 方法将它转换成对象。
----- --- - --------- ------- ------- ----- ----- --- - ------------------------ ---------------- -- ------ ------ ---- ---
注意事项
需要注意的是,如果传入的配对数组中有重复的键,则 Object.fromEntries() 将始终使用最后一个值。例如:
----- --- - --------- ------- ------- ---- -------- ---------- ----- --- - ------------------------ ---------------- -- ------ -------- ---- ---
兼容性
Object.fromEntries() 方法是 ES2019 新增的方法,如果需要在旧版本的浏览器中使用,可以使用 core-js 等 polyfill 库,或者手动实现一个兼容的方法。
总结
Object.fromEntries() 方法在 ES10 中的出现,为前端开发带来了非常方便和高效的功能。它可以将 Map 和由键值对数组形式表示的对象转换为一个真正的对象,使得开发者们能够更便捷地操作对象。在实际开发中,我们可以根据自己的需求尝试使用 Object.fromEntries() 方法,从而提高开发效率和代码质量。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/664649f4d3423812e44655f9