在前端开发中,我们经常需要处理和操作对象数据。而 ES11 新增的 Object.fromEntries 方法可以方便快捷地将由键值对组成的数组转换为对象,十分实用。
Object.fromEntries 方法简介
Object.fromEntries 方法可以将由键值对(二元组)组成的数组转换为一个对象。在这个数组中,每个元素是一个由两个元素组成的数组,分别代表了该键值对的键和值。
Object.fromEntries 使用示例
下面是一个基本的使用示例:
-- -------------------- ---- ------- ----- ------- - - -------- --------- ------- ---- ---------- --------- -- ----- --- - ---------------------------- ----------------- -- ------ -------- ---- --- ------- ---------
在示例中,由三个二元组组成的数组 entries
被转换成了包含三个键值对的对象 obj
。
处理对象数据
Object.fromEntries 方法不仅可以将数组转换为对象,还可以结合其他方法和语法来处理对象数据。下面是几个示例:
对象转换
我们可以将对象的键值对以数组的形式提取出来,然后转换成其他格式的数据,比如 CSV 格式、XML 格式、JSON 格式,或者直接进行网络传输。下面是一个将对象转换为 CSV 格式的例子:
-- -------------------- ---- ------- ----- --- - - ----- -------- ---- --- ------- -------- -- ----- --- - ------------------------------ ------- -- ------------------------------ ----------------- -- ---------- -- ------ -- -------------
在示例中,Object.entries
方法被用来转换对象,然后使用 map
方法和解构赋值将每个键值对组合成一个 CSV 格式的字符串,最后使用 join
方法将它们连接起来。
快速筛选
我们可以根据对象的属性快速筛选出其中符合条件的元素。下面是一个根据年龄将人员分为成人和未成年的例子:
-- -------------------- ---- ------- ----- ------ - - ------ - ---- --- ------- -------- -- ---- - ---- --- ------- ------ -- ------ - ---- --- ------- -------- -- ----- - ---- --- ------- ------ - -- ----- ------ - ------------------- ------------------------------------ - --- --- -- --- -- --- -- ----- ------ - ------------------- ------------------------------------ - --- --- -- --- - --- -- -------------------- -- ------- ----- --- ------- ---------- ------ ----- --- ------- ---------- -------------------- -- ----- ----- --- ------- -------- ----- ----- --- ------- --------
在示例中,Object.entries
方法被用来将对象转换为由键值对组成的数组。然后使用 filter
方法和解构赋值筛选出年龄符合和不符合条件的元素,最后使用 Object.fromEntries
将筛选出来的成人和未成年分别转换为两个对象。
总结
Object.fromEntries 方法可以方便快捷地将由键值对组成的数组转换为对象,让我们在处理对象数据时变得更加高效。通过结合其他方法和语法,我们可以更灵活地处理对象数据,在开发中发挥更大的作用。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/649bd46f48841e9894895f37