9.深克隆.html 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  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. function deepClone(data) {
  11. var temp = {};
  12. if(typeof data == 'object') {
  13. temp = Array.isArray(data) ? [] : {};
  14. for(key in data) {
  15. if(typeof data[key] == 'object') {
  16. temp[key] = deepClone(data[key]);
  17. } else {
  18. temp[key] = data[key];
  19. }
  20. }
  21. } else {
  22. temp = data;
  23. }
  24. return temp;
  25. }
  26. var arr = ['list',[100,1]];
  27. // var obj = {
  28. // name:'2'
  29. // }
  30. // Array.isArray(判断的值) 判断是否是数组 是 true / 不是 false
  31. //console.log(Array.isArray(obj))
  32. var newArr = deepClone(arr)
  33. var news;
  34. news = newArr;
  35. news[1][1] = ['llll'];
  36. console.log(news,'news');
  37. console.log(arr,'arr')
  38. </script>
  39. </body>
  40. </html>