Рубрики
Без рубрики

Метод назначения объекта()

Узнайте все о методе JavaScript assign() объекта Object

Введенный в ES2015 , этот метод копирует все перечислимые собственные свойства одного или нескольких объектов в другой.

Его основной вариант использования – создание неглубокой копии объекта.

const copied = Object.assign({}, original)

Будучи неглубокой копией, значения клонируются, а ссылки на объекты копируются (не сами объекты), поэтому, если вы редактируете свойство объекта в исходном объекте, оно также изменяется в скопированном объекте, поскольку внутренний объект, на который ссылается ссылка, тот же:

const original = {
  name: 'Fiesta',
  car: {
    color: 'blue'
  }
}
const copied = Object.assign({}, original)

original.name = 'Focus'
original.car.color = 'yellow'

copied.name //Fiesta
copied.car.color //yellow

Я упомянул “один или несколько”.:

const wisePerson = {
  isWise: true
}
const foolishPerson = {
  isFoolish: true
}
const wiseAndFoolishPerson = Object.assign({}, wisePerson, foolishPerson)

console.log(wiseAndFoolishPerson) //{ isWise: true, isFoolish: true }

Оригинал: “https://flaviocopes.com/javascript-object-assign/”