在 ES9 中,JavaScript 引入了两个新的对象方法:Object.values() 和 Object.entries()。这两个方法可以方便地获取对象的属性值和键值对数组。
Object.values()
Object.values() 方法返回一个包含对象所有属性值的数组,顺序与 for...in 循环遍历对象时的顺序一致。如果对象没有属性,返回一个空数组。
语法
------------------
参数
obj
:要获取属性值的对象。
返回值
一个包含对象所有属性值的数组。
示例
----- --- - - -- -- -- -- -- - -- ----- ------ - ------------------- -------------------- -- --- -- --
Object.entries()
Object.entries() 方法返回一个包含对象所有键值对的数组,顺序与 for...in 循环遍历对象时的顺序一致。每个键值对都是一个包含两个元素的数组,第一个元素为键名,第二个元素为对应的属性值。如果对象没有属性,返回一个空数组。
语法
-------------------
参数
obj
:要获取键值对的对象。
返回值
一个包含对象所有键值对的数组。
示例
----- --- - - -- -- -- -- -- - -- ----- ------- - -------------------- --------------------- -- ------ --- ----- --- ----- ---
应用场景
获取对象属性值数组
使用 Object.values() 方法可以方便地获取对象所有属性值的数组。例如,可以用它来计算对象属性值的总和、平均值等。
----- --- - - -- -- -- -- -- - -- ----- ------ - ------------------- -- ------- ----- --- - ------------------- ---- -- --- - ---- --- -- -------- ----- --- - --- - -------------- ----------------- -- - ----------------- -- -
过滤对象属性
使用 Object.entries() 方法可以方便地过滤对象属性。例如,可以用它来过滤出满足条件的属性,然后再将它们转换为一个新对象。
----- --- - - -- -- -- -- -- - -- ----- ------- - -------------------- -- ---------- - --- ----- --------------- - --------------------- ------- -- ----- -- --- -- --------------- ----- ------ - ------------------------------------ -------------------- -- - -- -- -- - -
转换对象属性
使用 Object.entries() 和 Object.fromEntries() 方法可以方便地转换对象属性。例如,可以用它来将对象的属性名和属性值互换。
----- --- - - -- -- -- -- -- - -- ----- ------- - -------------------- -- ---------- ----- -------------- - ------------------ ------- -- ------- ------ -- --------------- ----- ------ - ----------------------------------- -------------------- -- - -- ---- -- ---- -- --- -
总结
ES9 中引入了 Object.values() 和 Object.entries() 方法,它们可以方便地获取对象的属性值和键值对数组。使用这两个方法可以简化代码、提高效率,并且可以应用于各种场景,如获取对象属性值数组、过滤对象属性、转换对象属性等。在实际开发中,可以结合其他方法和语法,发挥出更大的威力。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/65d3053fadd4f0e0ffb43f02