ECMAScript 2017:理解 Object.keys 和 Object.values 方法

阅读时长 3 分钟读完

ECMAScript 2017:理解 Object.keys 和 Object.values 方法

在 JavaScript 编程中,我们经常需要对对象进行遍历和操作。ECMAScript 2017 引入了 Object.keys 和 Object.values 方法,这两个方法可以帮助我们更方便地操作对象。本文将详细介绍这两个方法的用法和意义,并提供示例代码。

Object.keys 方法

Object.keys 方法返回一个包含对象所有属性名的数组。这个数组的顺序与对象属性被创建的顺序一致。下面是 Object.keys 方法的语法:

其中,obj 表示被遍历的对象。下面是一个示例:

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

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

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

在上面的示例中,我们定义了一个对象 obj,然后使用 Object.keys 方法获取了它的所有属性名,并将结果保存在变量 keys 中。最后,我们打印了 keys 的值,可以看到它是一个包含了所有属性名的数组。

Object.keys 方法的返回值是一个数组,因此我们可以使用数组的方法来操作它,比如使用 forEach 方法遍历所有属性名:

在上面的示例中,我们使用 forEach 方法遍历了 obj 对象的所有属性名,并打印了每个属性名和对应的属性值。

Object.values 方法

Object.values 方法返回一个包含对象所有属性值的数组。这个数组的顺序与对象属性被创建的顺序一致。下面是 Object.values 方法的语法:

其中,obj 表示被遍历的对象。下面是一个示例:

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

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

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

在上面的示例中,我们定义了一个对象 obj,然后使用 Object.values 方法获取了它的所有属性值,并将结果保存在变量 values 中。最后,我们打印了 values 的值,可以看到它是一个包含了所有属性值的数组。

与 Object.keys 方法类似,Object.values 方法的返回值是一个数组,因此我们可以使用数组的方法来操作它,比如使用 reduce 方法计算所有属性值的和:

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

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

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

在上面的示例中,我们使用 reduce 方法计算了 obj 对象的所有属性值的和,并将结果保存在变量 sum 中。最后,我们打印了 sum 的值,可以看到它是所有属性值的和。

总结

Object.keys 和 Object.values 方法是 ECMAScript 2017 中新增的两个方法,它们可以帮助我们更方便地操作对象。Object.keys 方法返回一个包含对象所有属性名的数组,而 Object.values 方法返回一个包含对象所有属性值的数组。这两个方法都可以使用数组的方法来操作它们的返回值。在实际的 JavaScript 编程中,我们可以利用这两个方法来更加高效地遍历和操作对象。

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

纠错
反馈