<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. java語言

    JavaScript如何進行數組復制

    時間:2025-03-10 20:37:02 java語言 我要投稿
    • 相關推薦

    JavaScript如何進行數組復制

      導語:JavaScript如何進行數組復制?下面是小編給大家提供的數組復制代碼實現,大家可以參考閱讀,更多詳情請關注應屆畢業生考試網。

      push

      function copyArray(arr){

      var result = [];

      for(var i = 0; i < arr.length; i++){

      result.push(arr[i]);

      }

      return result;

      }

      var obj1=[1,2,3];

      var obj2=copyArray(obj1);

      console.log(obj1); //[1,2,3]

      console.log(obj2); //[1,2,3]

      obj2.push(4);

      console.log(obj1); //[1,2,3]

      console.log(obj2); //[1,2,3,4]

      join

      ??使用該方法的缺點是數組中的項全部變成了字符串形式

      function copyArray(arr){

      var result = [];

      result = arr.join().split(',');

      return result;

      }

      var obj1=[1,2,3];

      var obj2=copyArray(obj1);

      console.log(obj1); //[1,2,3]

      console.log(obj2); //['1','2','3']

      obj2.push(4);

      console.log(obj1); //[1,2,3]

      console.log(obj2); //['1','2','3',4]

      concat

      function copyArray(arr){

      var result = [];

      result = arr.concat();

      return result;

      }

      var obj1=[1,2,3];

      var obj2=copyArray(obj1);

      console.log(obj1); //[1,2,3]

      console.log(obj2); //[1,2,3]

      obj2.push(4);

      console.log(obj1); //[1,2,3]

      console.log(obj2); //[1,2,3,4]

      slice

      function copyArray(arr){

      var result = [];

      result = arr.slice();

      return result;

      }

      var obj1=[1,2,3];

      var obj2=copyArray(obj1);

      console.log(obj1); //[1,2,3]

      console.log(obj2); //[1,2,3]

      obj2.push(4);

      console.log(obj1); //[1,2,3]

      console.log(obj2); //[1,2,3,4]

      深拷貝

      ??以上方法實現的僅是數組的淺拷貝,如果要實現數組的深拷貝,需要使用遞歸方法

      function copyArray(arr,result){

      var result = result || [];

      for(var i = 0; i < arr.length; i++){

      if(arr[i] instanceof Array){

      result[i] = [];

      copyArray(arr[i],result[i]);

      }else{

      result[i] = arr[i];

      }

      }

      return result;

      }

      var obj1=[1,2,[3,4]];

      var obj2=copyArray(obj1);

      console.log(obj1[2]); //[3,4]

      console.log(obj2[2]); //[3,4]

      obj2[2].push(5);

      console.log(obj1[2]); //[3,4]

      console.log(obj2[2]); //[3,4,5]

    【JavaScript如何進行數組復制】相關文章:

    word公式如何進行快速復制粘貼08-18

    如何入門學習JavaScript11-10

    Java如何打印數組11-01

    如何正確使用Java數組11-04

    PHP新手如何學習數組10-15

    如何判斷php數組的維度08-04

    如何使用C語言數組指針09-14

    如何檢查JavaScript變量的類型09-19

    JavaScript如何實現JSON.stringify09-19

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人