javascript 直接删除数组元素

<SPAN style=""\: \'\\'outlook 

上半年在做ExtJS的时候,因为项目一些特殊情况需要直接删数组中的特定元素,

并且传入的参数可能会是下标,也可能会是数组元素。

所以就纠结出了如下的方法,留着以后查阅。

 
  1.   
  2. // 获取数组中指定元素的索引  
  3. Array.prototype.getIndexByValue = function(value) {  
  4.     var index = -1;  
  5.     for ( var i = 0; i < this.length; i++) {  
  6.         if (this[i] == value) {  
  7.             index = i;  
  8.             break 
  9.         }  
  10.     }  
  11.     return index;  
  12.  
  13. // 通过遍历,重构数组.  
  14. Array.prototype.remove = function(dx) {  
  15.     var me = this, removed = null 
  16.     if (dx > me.length - 1) {  
  17.         return false 
  18.     }  
  19.     if (isNaN(dx)) {  
  20.         removed = me.remove(me.getIndexByValue(dx));  
  21.     }  
  22.     for ( var i = 0, n = 0; i < me.length; i++) {  
  23.         if (me[i] != me[dx]) {  
  24.             me[n++] = me[i]  
  25.         } else {  
  26.             removed = me[i];  
  27.         }  
  28.     }  
  29.     if (removed)  
  30.         me.length -= 1;  
  31.     return removed 

你可能感兴趣的:(return,function,null,元素)