8.深拷贝.html 900 B

123456789101112131415161718192021222324252627282930313233343536
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>Document</title>
  7. </head>
  8. <body>
  9. <script>
  10. let person = {
  11. name:"图图",
  12. age: 3,
  13. address: {
  14. city:"哈尔滨",
  15. area:"南岗"
  16. }
  17. }
  18. function deepClone(obj) {
  19. let obj1 = {};
  20. for(let k in obj) {
  21. if(typeof (obj[k]) == 'object') {
  22. obj1[k] = deepClone(obj[k])
  23. } else {
  24. obj1[k] = obj[k];
  25. }
  26. }
  27. return obj1;
  28. }
  29. let news = deepClone(person);
  30. news.address.city = '北京';
  31. news.age = 13;
  32. console.log(news,'news');
  33. console.log(person,'person');
  34. </script>
  35. </body>
  36. </html>