ES7 中的 Object.entries 方法实现对象的键值对数组

阅读时长 3 分钟读完

在 JavaScript 中,我们经常需要将一个对象的键值对以数组的形式进行处理,例如进行遍历、排序等操作。在 ES7 中,引入了 Object.entries 方法,可以将一个对象的属性列表转换为键值对数组。

概述

Object.entries 方法返回一个给定对象自身可枚举属性的键值对数组,其排列顺序和对象自身属性枚举的顺序相同。如果对象不是一个对象,则会抛出一个 TypeError 异常。

其中,obj 为要转换的对象。返回结果为一个由 [key, value] 组成的二维数组。

示例

应用

Object.entries 方法可以用来方便地对对象进行遍历、过滤、转换等操作。

遍历

可以使用 for...of 循环来遍历键值对数组。

-- -------------------- ---- -------
----- --- - - -- -- -- -- -- - --

--- ------ ----- ------ -- -------------------- -
  -------------------- -----------
-
-- ------- 
-- -- -
-- -- -
-- -- -

过滤

使用 Array.filter 方法可以对一个对象的属性进行过滤,返回一个符合条件的属性对象。

转换

使用 Array.map 方法可以对一个对象的属性进行转换,返回转换后的属性值数组。

注意事项

  • Object.entries 方法只包括可枚举属性,不包含不可枚举属性和继承属性。
  • 如果对象属性名为 Symbol 类型,则会将 Symbol 类型的属性名转换为字符串类型。
  • 如果对象不是一个对象,则会抛出 TypeError 异常。

总结

Object.entries 方法可以方便地将一个对象的属性列表转换为键值对数组,可以用来方便地遍历、过滤、转换等操作。但需要注意其只包括可枚举属性、不包括不可枚举属性和继承属性。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/64abce8948841e98947a58d2

纠错
反馈