js
实现方式
const original = { a: 1, b: { c: 2 } };
const shallowCopy = { ...original };
shallowCopy.a = 3;
shallowCopy.b.c = 4;
console.log(original);// { a: 1, b: { c: 4 } }
console.log(shallowCopy);// { a: 3, b: { c: 4 } }
const original = { a: 1, b: { c: 2 } };
const shallowCopy = Object.assign({}, original);
shallowCopy.a = 3;
shallowCopy.b.c = 4;
console.log(original);// { a: 1, b: { c: 4 } }
console.log(shallowCopy);// { a: 3, b: { c: 4 } }
const original = [1, 2, { a: 3 }];
const shallowCopy = original.slice();
shallowCopy[0] = 10;
shallowCopy[2].a = 30;
console.log(original);// [1, 2, { a: 30 }]
console.log(shallowCopy);// [10, 2, { a: 30 }]