ECMAScript 2017 中如何使用 Object.values 和 Object.entries

阅读时长 4 分钟读完

ECMAScript 2017 中如何使用 Object.values 和 Object.entries

随着 ECMAScript 的不断更新,新的语言特性也在不断涌现。其中,Object.values 和 Object.entries 是 ECMAScript 2017 中新增加的两个方法,可以方便地获取对象的值和键值对。本文将详细介绍这两个方法的使用,并给出一些示例代码,帮助读者更好地理解和应用。

Object.values 方法

Object.values 方法用于获取一个对象中所有的值,返回一个由值组成的数组。这个方法的语法如下:

其中,obj 表示需要获取值的对象。

示例代码:

上述代码中,我们定义了一个包含三个键值对的对象 obj,然后使用 Object.values 方法获取其中所有的值,并将结果存储到 values 变量中。最后,我们将 values 变量输出到控制台,可以看到输出结果为 [1, 2, 3]。

需要注意的是,Object.values 方法返回的值的顺序和对象中键值对的定义顺序相同。值的顺序与对象中键的定义顺序无关。

Object.entries 方法

Object.entries 方法用于获取一个对象中所有的键值对,返回一个由键值对组成的数组。这个方法的语法如下:

其中,obj 表示需要获取键值对的对象。

示例代码:

上述代码中,我们定义了一个包含三个键值对的对象 obj,然后使用 Object.entries 方法获取其中所有的键值对,并将结果存储到 entries 变量中。最后,我们将 entries 变量输出到控制台,可以看到输出结果为 [["a", 1], ["b", 2], ["c", 3]]。

需要注意的是,Object.entries 方法返回的数组中,每个键值对都是一个数组,包含两个元素,第一个元素是键,第二个元素是值。返回的键值对的顺序和对象中键值对的定义顺序相同。

指导意义

Object.values 和 Object.entries 是两个非常方便的方法,可以帮助我们快速地获取对象的值和键值对,并在某些场景下优化代码的编写。比如,在遍历对象时,我们可以使用 Object.entries 获取键值对,并通过数组解构的方式获取键和值:

或者我们可以使用 Object.values 方法获取对象的值,并利用数组的 forEach 方法遍历这些值:

以上代码都能实现与直接使用 for...in 迭代相同的效果,但使用 Object.entries 和 Object.values 方法可以使代码更加简洁和易于维护。

总结

Object.values 和 Object.entries 是 ECMAScript 2017 中新增加的两个方法,可以方便地获取对象的值和键值对。它们的使用方法和语法都比较简单,但是在某些场景下能够帮助我们提高代码的编写效率。希望本文能够对读者有所启发,帮助大家更好地理解和使用这两个方法。

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

纠错
反馈