返回

直击Object.keys()、Object.allKeys()、Object.assign()的奥妙!

前端

Object.keys():揭秘对象的属性名

Object.keys()函数可为对象列出其属性名的清单。有了它,我们可以轻而易举地遍历对象中的属性,获取每个属性的值。

const person = {
  name: "John Doe",
  age: 30,
  city: "New York"
};

const keys = Object.keys(person);
console.log(keys); // ["name", "age", "city"]

Object.allKeys():深入探索对象的属性名

Object.allKeys()函数不仅可以列出对象自己的属性名,还能遍历原型链上的属性名。这对于深入探索对象非常有用。

const person = {
  name: "John Doe",
  age: 30
};

const prototype = Object.getPrototypeOf(person);
prototype.city = "New York";

const keys = Object.keys(person); // ["name", "age"]
const allKeys = Object.allKeys(person); // ["name", "age", "city"]

Object.assign():合并对象属性

Object.assign()函数可以将源对象的可枚举属性拷贝到目标对象中,从而轻松合并对象。

const person = {
  name: "John Doe",
  age: 30
};

const address = {
  city: "New York",
  state: "NY"
};

Object.assign(person, address);
console.log(person); // { name: 'John Doe', age: 30, city: 'New York', state: 'NY' }

结语

Object.keys()、Object.allKeys()和Object.assign()函数是JavaScript中强大的工具,掌握它们的使用技巧可以极大地提升编码效率和代码质量。希望本文对您有所帮助,欢迎持续关注我的技术博客,了解更多精彩内容!