ES9 之 Object.values() 方法详解

阅读时长 4 分钟读完

ES9 新增了许多有用的功能和方法,其中之一就是 Object.values() 方法。Object.values() 方法是一个非常实用的方法,可以方便地获取对象的属性值。在本文中,我们将深入探讨 Object.values() 方法的实现方式,使用场景和示例代码。

定义

Object.values() 方法是从一个对象中提取出所有可枚举属性的值,并返回一个数组。数组的顺序与对象的属性顺序相同(for..in 循环枚举对象属性获取的属性名的顺序不一定与对象属性定义时的顺序相同)。Object.values() 方法可用于遍历对象属性值或将其转换为数组。

语法

Object.values(obj)

参数:

  • obj (必须) – 需要提取属性值的对象。

返回值:

  • 一个包含对象所有可枚举属性值的数组。

示例代码

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

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

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

使用场景

Object.values() 方法可以用于以下场景:

遍历对象属性值

使用 Object.values() 方法可以方便地遍历对象属性值。例如,在下面这个示例中,我们可以使用 Object.values() 方法遍历 users 对象,获取所有用户的名字,并将它们存储在一个数组中:

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

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

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

转换对象属性值为数组

如果需要将对象属性值转换为数组,可以使用 Object.values() 方法。例如,在下面这个示例中,我们可以使用 Object.values() 方法将 users 对象的所有年龄值存储在一个数组中:

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

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

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

注意事项

  • Object.values() 方法只会提取对象的可枚举属性值。
  • 如果参数不是 Object 类型,则会抛出 TypeError 异常。
  • 在使用 Object.values() 方法时请注意不要与 Object.keys() 混淆,它们的作用是不同的,它们提取的内容也不同。

结论

Object.values() 方法是一个非常方便实用的方法,它可以方便地提取对象的属性值并返回一个数组,可以应用于遍历对象属性值或将其转换为数组。我们建议在日常开发中使用 Object.values() 方法来提高代码的可读性和易维护性。

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

纠错
反馈