代码改变世界

[转]JavaScript 删除数组中指定值的元素

2010-03-09 12:10  AnyKoro  阅读(476)  评论(2编辑  收藏  举报

/* 方法:Array.remove(dx)
   * 功能:删除数组元素.
   * 参数:dx删除元素的下标.
   * 返回:在原数组上修改数组
   */

//经常用的是通过遍历,重构数组.
Array.prototype.remove=function(dx)
{
    if(isNaN(dx)||dx>this.length){return false;}
    for(var i=0,n=0;i<this.length;i++)
    {
        if(this[i]!=this[dx])
        {
            this[n++]=this[i]
        }
    }
    this.length-=1
}

//在数组中获取指定值的元素索引
Array.prototype.getIndexByValue= function(value)
{
    var index = -1;
    for (var i = 0; i < this.length; i++)
    {
        if (this[i] == value)
        {
            index = i;
            break;
        }
    }
    return index;
}

//使用举例

a = ['1','2','3','4','5'];
var dx=a.getIndexByValue("2");
a.remove(dx); //删除下标为dx的元素