📜  Javascript Object.values()(1)

📅  最后修改于: 2023-12-03 15:16:06.226000             🧑  作者: Mango

JavaScript Object.values()

在JavaScript中,Object.values()是一个内置的函数,它允许你从给定的对象中获取所有值并返回一个数组。该函数返回的数组的顺序与对象中属性的顺序相同。

语法
Object.values(obj)

obj:要获取值的对象。

示例
const person = {
  name: 'John',
  age: 30,
  gender: 'male'
};

const values = Object.values(person);
console.log(values);
// 输出: ['John', 30, 'male']
说明

Object.values()方法返回一个包含给定对象中所有的值的数组。它会忽略对象的原型链上的属性,仅返回对象自身可枚举属性的值。

适用场景
  • 遍历对象值:使用Object.values()可以轻松地遍历对象的值。你可以将返回的数组与Array.prototype.forEachfor...of或其他数组迭代方法结合使用。
const person = {
  name: 'John',
  age: 30,
  gender: 'male'
};

Object.values(person).forEach(value => {
  console.log(value);
});
// 输出: 'John'、30、'male'
  • 获取对象值的数组:如果你需要以数组的形式访问对象的值,而不关心键名,Object.values()是一个便捷的方法。
const person = {
  name: 'John',
  age: 30,
  gender: 'male'
};

const valuesArray = Object.values(person);
console.log(valuesArray);
// 输出: ['John', 30, 'male']
兼容性

Object.values()是在ECMAScript 2017标准中引入的,并且在大多数主流浏览器中都得到支持。但在一些较老的或不常用的浏览器版本中可能不支持该方法,因此在使用前最好进行兼容性检查或提供适当的降级处理。

要检查Object.values()方法的兼容性,可以使用以下代码:

if (typeof Object.values !== 'function') {
  console.log('浏览器不支持 Object.values() 方法');
} else {
  console.log('浏览器支持 Object.values() 方法');
}
总结

使用Object.values()可以轻松地从对象中获取所有值,并将它们存储在一个数组中。这个方法非常实用,能够简化对对象值的遍历和访问。但在使用时需要注意兼容性,并做好降级处理,以确保代码在不支持该方法的环境中也能正常运行。