av手机免费在线观看,国产女人在线视频,国产xxxx免费,捆绑调教一二三区,97影院最新理论片,色之久久综合,国产精品日韩欧美一区二区三区

java語言

JavaScript如何進行數(shù)組復(fù)制

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

JavaScript如何進行數(shù)組復(fù)制

  導(dǎo)語:JavaScript如何進行數(shù)組復(fù)制?下面是小編給大家提供的數(shù)組復(fù)制代碼實現(xiàn),大家可以參考閱讀,更多詳情請關(guān)注應(yīng)屆畢業(yè)生考試網(wǎng)。

  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

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

  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]

  深拷貝

  ??以上方法實現(xiàn)的僅是數(shù)組的淺拷貝,如果要實現(xiàn)數(shù)組的深拷貝,需要使用遞歸方法

  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如何進行數(shù)組復(fù)制】相關(guān)文章:

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

如何入門學習JavaScript11-10

Java如何打印數(shù)組11-01

如何正確使用Java數(shù)組11-04

PHP新手如何學習數(shù)組10-15

如何判斷php數(shù)組的維度08-04

如何使用C語言數(shù)組指針09-14

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

JavaScript如何實現(xiàn)JSON.stringify09-19