/

Object.assign()方法

Object.assign()方法

在本篇文章中,我們將介紹JavaScript中的Object.assign()方法。

這個方法在ES2015中引入,它將一個或多個物件的可枚舉自身屬性複製到另一個物件中。

它的主要用途是創建一個對象的淺拷貝。

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

由於是淺拷貝,值被複製,對象引用被複製(而不是對象本身),所以如果在原始對象上編輯一個對象屬性,則在複製的對象中也會修改,因為內部引用的對象是相同的:

1
2
3
4
5
6
7
8
9
10
11
12
13
const original = {
name: 'Fiesta',
car: {
color: 'blue'
}
}
const copied = Object.assign({}, original)

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

console.log(copied.name) // Fiesta
console.log(copied.car.color) // yellow

我們提到了”一個或多個”:

1
2
3
4
5
6
7
8
9
const wisePerson = {
isWise: true
}
const foolishPerson = {
isFoolish: true
}
const wiseAndFoolishPerson = Object.assign({}, wisePerson, foolishPerson)

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

tags: [“JavaScript”, “Object assign”, “ES2015”]