利用Array.splice实现Array的insert/remove

 splice 方法

从一个数组中移除一个或多个元素,如果必要,在所移除元素的位置上插入新元素,返回所移除的元素。
arrayObj.splice(start, deleteCount, [item1[, item2[, . . . [,itemN]]]])
参数
arrayObj
必选项。一个 Array 对象。
start
必选项。指定从数组中移除元素的开始位置,这个位置是从 0 开始计算的。
deleteCount
必选项。要移除的元素的个数。
item1, item2,. . .,itemN
必选项。要在所移除元素的位置上插入的新元素。
说明
splice 方法可以移除从 start 位置开始的指定个数的元素并插入新元素,从而修改 arrayObj。返回值是一个由所移除的元素组成的新 Array 对象。
要求
版本 5.5



  1. Array.prototype.clear=function(){
  2.   this.length=0;
  3. }
  4. Array.prototype.insertAt=function(index,obj){
  5.   this.splice(index,0,obj);
  6. }
  7. Array.prototype.removeAt=function(index){
  8.   this.splice(index,1);
  9. }
  10. Array.prototype.remove=function(obj){
  11.   var index=this.indexOf(obj);
  12.   if (index>=0){
  13.     this.removeAt(index);
  14.   }
  15. }

使用:
  1. var a = [];
  2. for (var i = 0; i < 5; i++) a.insertAt(i, i);
  3. alert(a);
  4. a.removeAt(1);
  5. alert(a);



posted on 2009-01-13 13:01  honker  阅读(193)  评论(0编辑  收藏  举报