创建一个对象,并设置原型

1
2
3
4
5
const obj = {
name: 'tim'
};
Object.setPrototypeOf(obj, {age: 18});

引用

1
2
3
const obj1 = obj;
const obj2 = Object.assign(obj);

浅拷贝

1
const objShallow_3 = Object.assign({}, obj);

再将原型链克隆下来

1
2
const objPrototype = Object.getPrototypeOf(obj);
const obj4 = Object.assign(Object.create(objPrototype), obj);

深拷贝

  • 1
    2
    const objJsonString = JSON.stringify(obj);
    const objDeep = JSON.parse(objJsonString);