返回

ES6 中对象新增的方法,你真的了解吗?

前端

ES6 中对象新增的方法

ES6 中对象新增了许多有用的方法,这些方法可以帮助我们更轻松地处理对象。这些方法包括:

  • Object.assign() :该方法可以将一个或多个对象的属性复制到另一个对象。
  • Object.is() :该方法可以严格比较两个值是否相等。
  • Object.values() :该方法可以返回一个对象的所有属性值。
  • Object.entries() :该方法可以返回一个对象的所有属性名和属性值。

如何使用 ES6 中对象新增的方法

Object.assign()

Object.assign() 方法可以将一个或多个对象的属性复制到另一个对象。该方法的第一个参数是要复制属性的目标对象,第二个参数是要复制属性的源对象。

const obj1 = {
  name: 'John Doe',
  age: 30
};

const obj2 = {
  city: 'New York',
  country: 'USA'
};

const obj3 = Object.assign(obj1, obj2);

console.log(obj3);
// { name: 'John Doe', age: 30, city: 'New York', country: 'USA' }

Object.is()

Object.is() 方法可以严格比较两个值是否相等。该方法与 === 运算符相似,但 Object.is() 方法可以更严格地比较两个值。

console.log(Object.is(NaN, NaN)); // true
console.log(Object.is(+0, -0)); // false

Object.values()

Object.values() 方法可以返回一个对象的所有属性值。该方法的返回值是一个数组,数组中的元素是对象的所有属性值。

const obj = {
  name: 'John Doe',
  age: 30,
  city: 'New York'
};

const values = Object.values(obj);

console.log(values);
// [ 'John Doe', 30, 'New York' ]

Object.entries()

Object.entries() 方法可以返回一个对象的所有属性名和属性值。该方法的返回值是一个数组,数组中的元素是对象的所有属性名和属性值的数组。

const obj = {
  name: 'John Doe',
  age: 30,
  city: 'New York'
};

const entries = Object.entries(obj);

console.log(entries);
// [ [ 'name', 'John Doe' ], [ 'age', 30 ], [ 'city', 'New York' ] ]

结语

ES6 中对象新增的方法非常有用,可以帮助我们更轻松地处理对象。这些方法包括 Object.assign(), Object.is(), Object.values()Object.entries(). 在本文中,我们介绍了这些方法如何使用,并提供了一些示例代码。希望这篇文章对你有帮助。