10.深克隆3.html 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  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. var news = {
  11. name: '赵家锐',
  12. age: 29,
  13. msg: {
  14. address: '哈尔滨',
  15. sex: '男'
  16. }
  17. }
  18. var arr = ['list',[100,98]];
  19. var arr = 1;
  20. function deepClone(data) {
  21. var temp = {};
  22. if(typeof data == 'object') {
  23. temp = Array.isArray(data) ? [] : {};
  24. for(var key in data) {
  25. if(typeof(data[key]) == 'object' ) {
  26. temp[key] = deepClone(data[key]);
  27. } else {
  28. temp[key] = data[key];
  29. }
  30. }
  31. } else {
  32. temp = data
  33. }
  34. return temp;
  35. }
  36. var arr1 = deepClone(arr);
  37. arr1[1][1] = 12;
  38. console.log(arr1,'arr1');
  39. console.log(arr,'arr');
  40. </script>
  41. </body>
  42. </html>