ES7 中 Object.entries 和 Object.values 方法的用法

在 ES7 中,JavaScript 新增了两个方法:Object.entries 和 Object.values,这两个方法可以帮助我们更方便地操作对象。本文将详细介绍这两个方法的用法、学习和指导意义,并提供示例代码。

Object.entries 方法

Object.entries 方法返回一个给定对象自身可枚举属性的键值对数组,其排列顺序与使用 for...in 循环遍历该对象时返回的顺序一致(区别在于 for...in 循环还会枚举原型链中的属性)。

语法如下:

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

参数 obj 是要返回键值对的对象。

返回值是一个数组,其中每个元素都是一个形如 [key, value] 的数组,其中 key 是对象属性名,value 是属性值。

示例代码:

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

上面的代码中,Object.entries 返回了一个包含两个数组的数组,每个数组都包含一个键值对。

Object.entries 方法的实际应用场景比较多,比如:

  1. 将对象转换为 Map 对象
----- --- - - ---- ------ ---- -- --
----- --- - --- -------------------------
----------------- -- --- - ----- -- ------ ----- -- -- -
  1. 遍历对象的键值对
----- --- - - ---- ------ ---- -- --
--- ------ ----- ------ -- -------------------- -
  -------------------- -----------
-
-- -------
-- ---- ---
-- ---- --
  1. 将对象转换为数组
----- --- - - ---- ------ ---- -- --
----- --- - ------------------------------ ------- -- -- ---- ----- ----
----------------- -- -- ---- ------ ------ ----- -- - ---- ------ ------ -- --

Object.values 方法

Object.values 方法返回一个给定对象自身可枚举属性的值数组,其排列顺序与使用 for...in 循环遍历该对象时返回的顺序一致(区别在于 for...in 循环还会枚举原型链中的属性)。

语法如下:

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

参数 obj 是要返回值数组的对象。

返回值是一个数组,其中每个元素都是对象属性的值。

示例代码:

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

上面的代码中,Object.values 返回了一个包含两个值的数组,分别是 'bar' 和 42。

Object.values 方法的实际应用场景比较多,比如:

  1. 遍历对象的值
----- --- - - ---- ------ ---- -- --
--- ------ ----- -- ------------------- -
  -------------------
-
-- -------
-- ---
-- --
  1. 判断对象是否包含某个值
----- --- - - ---- ------ ---- -- --
------------------------------------------------ -- ----
--------------------------------------------- -- -----
  1. 将对象转换为数组
----- --- - - ---- ------ ---- -- --
----- --- - -------------------
----------------- -- ------- ---

总结

Object.entries 和 Object.values 方法是 ES7 新增的两个方法,它们可以帮助我们更方便地操作对象。Object.entries 方法返回一个给定对象自身可枚举属性的键值对数组,Object.values 方法返回一个给定对象自身可枚举属性的值数组。这两个方法的实际应用场景比较多,比如将对象转换为 Map 对象、遍历对象的键值对或值、判断对象是否包含某个值等。对于前端开发人员来说,熟练掌握这两个方法可以提高开发效率,减少代码量,提升代码质量。

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