9_深拷贝2.html 871 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <title>Document</title>
  8. </head>
  9. <body>
  10. <script>
  11. function deepClone(data) {
  12. var tmp = {}
  13. if (typeof data == 'object') {
  14. // if(Array.isArray(data)){
  15. // tmp = []
  16. // } else {
  17. // tmp = {}
  18. // }
  19. tmp = Array.isArray(data) ? [] : {}
  20. for(key in data){
  21. if(typeof data == 'object'){
  22. tmp[key] == deepClone(data[key])
  23. } else {
  24. tmp[key] = data[key]
  25. }
  26. }
  27. } else {
  28. tmp = data
  29. }
  30. }
  31. // var arr1 = [1,2,3]
  32. // var person = {
  33. // name:'zs'
  34. // }
  35. // console.log(Array.isArray(person))
  36. </script>
  37. </body>
  38. </html>