在 JavaScript 中,对象是一种基本的数据类型之一。在前端开发中,经常需要对对象进行操作,例如获取对象的属性、拷贝对象、合并对象等等。ES8 中提供了 Object.values 和 Object.keys 两种方法,可以方便地操作 JavaScript 对象。本篇文章将详细介绍这两种方法的用法。
Object.keys 方法
Object.keys 方法返回一个对象的所有键名组成的数组。例如:
----- --- - - ---- -- ---- - -- ----- ---- - ----------------- ------------------ -- ------- ------
在上面的例子中,Object.keys 方法返回了 obj 对象的所有键,即 ['foo', 'bar']。
Object.keys 方法的语法如下:
----------------
其中 obj 是需要返回键名数组的对象。
Object.keys 方法的实现原理是遍历对象的所有可枚举属性,将其中的键名取出来,返回一个数组。
Object.keys 方法常用于对对象进行遍历。
Object.values 方法
Object.values 方法返回一个对象的所有键值组成的数组。例如:
----- --- - - ---- -- ---- - -- ----- ------ - ------------------- -------------------- -- --- --
在上面的例子中,Object.values 方法返回了 obj 对象的所有键值,即 [1, 2]。
Object.values 方法的语法如下:
------------------
其中 obj 是需要返回键值数组的对象。
Object.values 方法的实现原理是遍历对象的所有可枚举属性,将其中的键值取出来,返回一个数组。
Object.values 方法常用于获取对象的属性值。
示例代码
下面是一些使用 Object.keys 和 Object.values 方法的示例代码:
遍历对象的所有键
----- --- - - ---- -- ---- - -- ---------------------------- -- - ----------------- ---
在上面的代码中,我们使用 Object.keys 方法获取 obj 对象的所有键,然后使用 forEach 方法遍历这些键。
检查对象中是否存在某个键
----- --- - - ---- -- ---- - -- ----- ------ - --------------------------------- -------------------- -- ----
在上面的代码中,我们使用 Object.keys 方法获取 obj 对象的所有键,然后使用 includes 方法检查其中是否包含 'foo' 键。
对象属性求和
----- --- - - ---- -- ---- - -- ----- --- - ------------------------------- ---- -- --- - ----- ----------------- -- -
在上面的代码中,我们使用 Object.values 方法获取 obj 对象的所有属性值,然后使用 reduce 方法求和。
总结
ES8 中提供了 Object.keys 和 Object.values 两种方法,可以方便地操作 JavaScript 对象。Object.keys 方法用于获取对象的所有键名组成的数组,Object.values 方法用于获取对象的所有键值组成的数组。这两种方法常用于对象遍历、属性检查、属性求和等操作。熟练掌握这两种方法,可以提高代码的编写效率。
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/646bca04968c7c53b0af74ba