1 简单数据类型

  1. var obj = {
  2. "name": 'xu',
  3. "age": 23
  4. } //原数组
  5. var newObj1 = obj; //浅拷贝
  6. var newObj2 = Object.assign({},obj); //深拷贝
  7. var newObj3 = {...obj}; //深拷贝
  8. var newObj4 = JSON.parse(JSON.stringify(obj)); //深拷贝
  9. obj.name = 'leon';
  10. obj.age = 666 ;
  11. console.log(obj);
  12. console.log(newObj1);
  13. console.log(newObj2);
  14. console.log(newObj3);
  15. console.log(newObj4);

image.png

2 复杂数据类型

  1. var obj = {
  2. name: 'xu',
  3. age: 23,
  4. num:[1,2,3,4]
  5. } //原数组
  6. var newObj1 = obj; //浅拷贝
  7. var newObj2 = Object.assign({},obj); //浅拷贝
  8. var newObj3 = {...obj}; //浅拷贝
  9. var newObj4 = JSON.parse(JSON.stringify(obj)); //深拷贝
  10. obj.name = 'leon';
  11. obj.num[0] = 6;
  12. console.log(obj);
  13. console.log(newObj1);
  14. console.log(newObj2);
  15. console.log(newObj3);
  16. console.log(newObj4);

image.png