ES9 中新增的 Object.fromEntries() 方法可以将一个键值对数组转换为一个对象。这个方法可以方便地将数组转换成对象,而无需使用循环语句和对象字面量的方式手动创建对象。在前端开发中,我们经常需要将一些数据转换成对象,这个方法可以大大简化我们的代码。
语法
Object.fromEntries(iterable)
- iterable:一个可迭代的键值对数组,每个元素都是一个长度为 2 的数组,第一个元素表示键,第二个元素表示值。
示例代码
----- ------- - - -------- ------- ------- ---- ---------- ------- -- ----- --- - ---------------------------- ----------------- -- ------ ------ ---- --- ------- -------
使用技巧
将 Map 转换成对象
在实际开发中,我们可能会遇到需要把 Map 转换成对象的情况。Map 是一种常见的数据结构,它可以存储任意类型的键和值,但是在某些场景下,我们需要将其转换成对象。这个时候,我们可以使用 Object.fromEntries() 方法来实现:
----- --- - --- ----- -------- ------- ------- ---- ---------- ------- --- ----- --- - ------------------------ ----------------- -- ------ ------ ---- --- ------- -------
将 FormData 转换成对象
在前端开发中,我们经常需要使用 FormData 对象来上传文件或者提交表单数据。但是在某些场景下,我们需要将 FormData 转换成对象。这个时候,我们可以使用 Object.fromEntries() 方法来实现:
----- -------- - --- ----------- ----------------------- ------- ---------------------- ---- ------------------------- -------- ----- --- - ----------------------------- ----------------- -- ------ ------ ---- --- ------- -------
将 URLSearchParams 转换成对象
在前端开发中,我们经常需要使用 URLSearchParams 对象来处理 URL 查询参数。但是在某些场景下,我们需要将 URLSearchParams 转换成对象。这个时候,我们可以使用 Object.fromEntries() 方法来实现:
----- ------------ - --- ----------------------------------------------- ----- --- - --------------------------------- ----------------- -- ------ ------ ---- ----- ------- -------
需要注意的是,URLSearchParams 转换成的对象中,所有的值都是字符串类型。
总结
Object.fromEntries() 方法可以方便地将一个键值对数组转换为一个对象,这个方法可以大大简化我们的代码。在实际开发中,我们可以使用它来将 Map、FormData 或者 URLSearchParams 转换成对象。需要注意的是,URLSearchParams 转换成的对象中,所有的值都是字符串类型。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/65d948551886fbafa46dbb22