摘要: 因为javascript分原始类型与引用类型(与java、c#类似)。Array是引用类型,所以直接用=号赋值的话,只是把源数组的地址(或叫指针)赋值给目的数组,并没有实现数组的数据的拷贝。另外对一维数组和多维数据的深拷贝实现方式是不一样的,下面分别讨论。 一、 错误实现 var array1 = new Array("1","2","3"); var array2; array2 = array1; array1.length = 0; alert(array2); //返回为空这种做法是错的,因为javascript分原始类型与引 阅读全文
posted @ 2014-01-17 16:49 matthew2015 阅读(9245) 评论(0) 推荐(1) 编辑
摘要: js中没有list类,可以使用Array来实现list类(function(win) { var ArrayList = function() { this.datas = []; }; var proto = ArrayList.prototype; proto.size = function() { return this.datas.length; }; proto.isEmpty = function() { return this.size() === 0; }; proto.contains ... 阅读全文
posted @ 2014-01-17 10:40 matthew2015 阅读(1154) 评论(0) 推荐(0) 编辑