介绍Object.keys

本人github

Object.keys() 是一个JavaScript内置函数,用于返回一个由对象自身的(不包括原型链上的)所有可枚举属性组成的数组。数组中属性名的排列顺序与通过手动循环对象属性时的顺序一致。

语法

Object.keys(obj)
  • obj:要返回其自身所有可枚举属性的对象。

返回值

一个表示给定对象自身所有可枚举属性的字符串数组。

示例

基础用法

const obj = {
    
     a: 1, b: 2, c: 3 };
const keys = Object.keys(obj);
console.log(keys); // 输出:['a', 'b', 'c']

非对象参数

如果参数不是一个对象,Object.keys() 会将其转换为对象。

// 数组
console.log(Object.keys([1, 2, 3])); // 输出:['0', '1', '2']

// 字符串
console.log(Object.keys('foo')); // 输出:['0', '1', '2']

// 数值
console.log(Object.keys(101)); // 输出:[]

// 布尔值
console.log(Object.keys(true)); // 输出:[]

遍历对象属性

你可以使用 Object.keys()forEach() 结合,遍历对象的所有可枚举属性。

const obj = {
    
     a: 1, b: 2, c: 3 };
Object.keys(obj).forEach(key => {
    
    
  console.log(`Key: ${
      
      key}, Value: ${
      
      obj[key]}`);
});

// 输出:
// Key: a, Value: 1
// Key: b, Value: 2
// Key: c, Value: 3

注意事项

  • Object.keys() 只返回对象自身的可枚举属性,不包括原型链上的属性。
  • 属性的顺序与通过手动循环对象属性时的顺序一致。

这个方法在处理对象和与对象相关的操作时非常有用。

猜你喜欢

转载自blog.csdn.net/m0_57236802/article/details/132834786