對象的淺拷貝:
Object.assign()
特點: 淺拷貝, 對象的合併
var obj1 = { 'one': { 'two': 2 } }
var obj2 = Object.assign({}, obj1)
obj1 == obj2 //false
obj2.one.two = 22;
obj1.one.two = ? //22 受影響變成22
//不過, 如果你只是改變對象的淺層的話,就不會受影響了, 效果如下
obj2.one = { 'three': 3 }
obj1.one = ? // {two: 22}
JSON.parse(JSON.stringify())
特點: 深拷貝
var obj3 = { 'one': { 'two': 2 } }
var obj4 = JSON.parse(JSON.stringify(obj3))
//這時候我們拷貝出來的這個obj4的值
obj4.one.two = 22
obj3.one.two = ? // 2