ES9 中的 Object.values() 和 Object.entries() 方法获取对象属性值和键值对

阅读时长 4 分钟读完

在 JavaScript 的开发中,我们经常需要遍历对象的属性和值,以实现各种功能和逻辑。在 ES9 中,新增了 Object.values() 和 Object.entries() 两个方法,可以更方便地获取对象的属性值和键值对,提高了开发效率。

Object.values() 方法

Object.values() 方法返回一个数组,其中包含对象的所有属性值,顺序与对象的属性顺序一致。例如:

这个方法不仅适用于普通对象,也适用于数组和类数组对象。例如:

需要注意的是,如果传入的参数为 null 或 undefined,会抛出 TypeError 错误。另外,该方法不会遍历对象上的原型链。如果要获取到原型链上的属性值,需要自己手动实现遍历。

Object.entries() 方法

Object.entries() 方法返回一个数组,其中包含对象的所有键值对,每个键值对都是一个数组,第一个元素是键名,第二个元素是键值。例如:

这个方法同样适用于普通对象、数组和类数组对象。例如:

同样要注意的是,如果传入的参数为 null 或 undefined,会抛出 TypeError 错误,而且该方法同样不会遍历对象上的原型链。

总结

Object.values() 和 Object.entries() 两个方法的使用,可以让我们更方便地获取对象的属性值和键值对。这个特性的引入,可以提高开发效率,简化代码实现流程。

需要注意的是,在使用这两个方法时,要格外注意传入参数的合法性,特别是在处理异步数据时更应如此。并且要牢记,这两个方法不会遍历对象上的原型链,如果需要获取原型链上的属性,需要自己手动实现遍历。

示例代码:

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

纠错
反馈