ES7 中新增了两个 Object 对象的方法:Object.entries 和 Object.values。它们提供了一种更简单的方式来迭代遍历对象中的属性。这篇文章将详细解释这两个方法,并提供一些示例代码来说明它们的用法。
Object.entries
Object.entries 方法返回一个包含对象的所有可枚举属性的 Array 对象。数组中的每个元素都是一个键值对,其中第一个元素是属性名,第二个元素是属性值。
----- --- - --- -- -- -- -- --- ----- ------- - -------------------- --------------------- -- ------- ------ --- ----- --- ----- ---
你可以使用 for-of
循环来遍历返回的数组:
--- ------ ----- ------ -- -------------------- - -------------------- ----------- - -- ------- -- -- - -- -- - -- -- -
Object.entries 会返回对象自有属性的键值对,但是不会返回继承属性。
Object.values
Object.values 方法返回一个包含对象的所有可枚举属性值的 Array 对象。
----- --- - --- -- -- -- -- --- ----- ------ - ------------------- -------------------- -- ------- --- -- --
你可以将返回的数组与 Array.prototype.reduce
方法配合使用,计算对象属性值的和:
----- --- - ------------------ ------------- ---- -- --- - ---- --- ----------------- -- ------- -
和 Object.entries 类似,Object.values 也只会返回对象自有属性的值,不会返回继承属性。
总结
Object.entries 和 Object.values 是 ES7 中新增的 Object 对象的方法。它们分别返回对象可枚举属性的键值对数组和值数组。这些方法为迭代遍历对象的属性提供了更加简单和直接的方式。Object.entries 方法可以方便地将对象转换为 Map 对象,而 Object.values 方法可以方便地将对象的属性值进行计算。
这里提供了一些示例代码,让你更好地理解它们的用法。希望本文对你理解这两个方法有所帮助。
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/647ac217968c7c53b0669918