开发者社区> 问答> 正文

JavaScript 怎么对数组进行 回调操作 的不影响原数组?

举个例子,下面是我做好的:

我为了不影响原数组 arr2 我新创建了一个 arr3 ;
可是最后还是被影响了,

var arr3=new arr2;
var arr3=new arr2();

这个语法又行不通,怎么弄呢?

var arr2 =new Array(10,12,16,18,13,14,15,8,7,6,1,5,2 );


var arr3=arr2;

//重排序;
arr3.sort(function(a,b){if(a==b){return 0;}else if(a>b){return -1;}else{return 1;}});

console.log(  arr2.toString() );
console.log(  arr3.toString() );

展开
收起
杨冬芳 2016-06-12 14:51:56 1958 0
2 条回答
写回答
取消 提交回答
  • 使用新对象存储数据内容,再传递给递归调用
    2019-07-17 19:34:05
    赞同 展开评论 打赏
  • 最简单的办法就是,arr3的时候你clone一下arr2

    var arr3 = JSON.parse(JSON.stringify(arr2))
    2019-07-17 19:34:05
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
JavaScript面向对象的程序设计 立即下载
Delivering Javascript to World 立即下载
编程语言如何演化-以JS的private为例 立即下载