JavaScript如何进行数组复制

时间:2025-08-19 04:40:11 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); /pic/p>

  console.log(obj2); /pic/p>

  obj2.push(4);

  console.log(obj1); /pic/p>

  console.log(obj2); /pic/p>

  join

  ??使用该方法的缺点是数组中的项全部变成了字符串形式

  function copyArray(arr){

  var result = [];

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

  return result;

  }

  var obj1=[1,2,3];

  var obj2=copyArray(obj1);

  console.log(obj1); /pic/p>

  console.log(obj2); /pic/p>

  obj2.push(4);

  console.log(obj1); /pic/p>

  console.log(obj2); /pic/p>

  concat

  function copyArray(arr){

  var result = [];

  result = arr.concat();

  return result;

  }

  var obj1=[1,2,3];

  var obj2=copyArray(obj1);

  console.log(obj1); /pic/p>

  console.log(obj2); /pic/p>

  obj2.push(4);

  console.log(obj1); /pic/p>

  console.log(obj2); /pic/p>

  slice

  function copyArray(arr){

  var result = [];

  result = arr.slice();

  return result;

  }

  var obj1=[1,2,3];

  var obj2=copyArray(obj1);

  console.log(obj1); /pic/p>

  console.log(obj2); /pic/p>

  obj2.push(4);

  console.log(obj1); /pic/p>

  console.log(obj2); /pic/p>

  深拷贝

  ??以上方法实现的仅是数组的浅拷贝,如果要实现数组的深拷贝,需要使用递归方法

  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]); /pic/p>

  console.log(obj2[2]); /pic/p>

  obj2[2].push(5);

  console.log(obj1[2]); /pic/p>

  console.log(obj2[2]); /pic/p>

【JavaScript如何进行数组复制】相关文章:

word公式如何进行快速复制粘贴02-19

如何入门学习JavaScript11-28

PHP新手如何学习数组03-13

Java如何打印数组12-10

如何判断php数组的维度12-27

如何正确使用Java数组11-11

如何检查JavaScript变量的类型03-01

如何使用C语言数组指针09-13

Java数组在内存中是如何存放的10-03