1. 程式人生 > >Object.assign 淺拷貝還是深拷貝

Object.assign 淺拷貝還是深拷貝

Object.assign 可以把 n 個源物件拷貝到目標物件中去,如下

let m ={name: {asd: '123'}}

let n = Object.assign({}, m)

console.log(n)

執行結果

{name: {asd: '123'}}

那到底是深拷貝還是淺拷貝呢,答案是第一級屬性深拷貝,以後級別屬性淺拷貝 。大家看下面兩段程式碼

let s ={name: {asd: '123'}}

let d = Object.assign({}, s)

d.name.asd = '123456789'

console.log(d, s)