ES7 (也被称为 ECMAScript 2016)是 ECMAScript 标准的最新版本之一,提供了一些新的语言特性和增强功能。其中 Object.values() 和 Object.entries() 是其中两个非常实用的新增方法,它们可以极大地简化我们在 JavaScript 中的工作。
Object.values() 方法
Object.values() 方法接受一个对象作为参数,并返回一个包含该对象的所有属性值的数组。返回的数组元素顺序是对象属性的枚举顺序。
示例代码
----- -------- - - -- -- -- -- -- - -- ----- ------ - ------------------------ -- --- -- --
用途
在以前,要获取对象的值,需要通过遍历对象的属性来获取每个属性对应的值,现在可以直接使用 Object.values() 方法来获取。
----- -------- - - -- -- -- -- -- - -- ----- ------------ - ---------------------- ----- -------------- - --- --- ---- - - -- - - -------------------- ---- - ----------------------------------------------- - -- --------------- --- -- --
使用 Object.values() 方法可以简化上述代码:
----- -------- - - -- -- -- -- -- - -- ----- -------------- - ------------------------ -- --------------- --- -- --
Object.entries() 方法
Object.entries() 方法与 Object.values() 方法相似,也是接受一个对象作为参数,并返回一个包含该对象的所有属性及对应值的数组。每个数组元素都是一个由属性名和属性值组成的数组。
示例代码
----- -------- - - -- -- -- -- -- - -- ----- ------- - ------------------------- -- ------ --- ----- --- ----- ---
用途
Object.entries() 方法可以用于遍历一个对象并对其进行操作,也可以将对象转换为 Map 数据结构(Map 对象是一种更加强大的数据结构,可以提供一些额外的特性)。
下面的代码演示了如何使用 Object.entries() 方法来计算对象属性的总和。
----- -------- - - -- -- -- -- -- - -- --- --- - -- --------------------------------------- ------- -- - --- -- ------ --- ----------------- -- -
还可以将对象转换为 Map 对象:
----- -------- - - -- -- -- -- -- - -- ----- ----- - --- ------------------------------ ---------------------------- -- -
总结
Object.values() 和 Object.entries() 方法是 ES7 新增加的实用方法,可以帮助我们更加快捷地操作对象或将对象转换为 Map 数据结构。特别是在处理数据时,这两个方法既可以提高代码可读性,也能减少代码行数,使代码更加简洁。
我们需要注意的是,这两个方法在不支持 ES7 的浏览器上运行时会遇到兼容性问题,因此可以通过使用 Babel(一种 JavaScript 编译器)或其他相关工具进行转换。
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/649ae28548841e98947d0cd2