Array.prototype.indexOf = function(p_var)
{
 for (var i=0; i<this.length; i++)
 {
  if (this[i] == p_var)
  {
   return(i);
  }
 }
 return(-1);
}
Array.prototype.exists = function(p_var) {return(this.indexOf(p_var) != -1);}
Array.prototype.queue = function(p_var) {this.push(p_var)}
Array.prototype.dequeue = function() {return(this.shift());}
Array.prototype.removeAt = function(p_iIndex) {return this.splice(p_iIndex, 1);}
Array.prototype.remove = function(o)
{
 var i = this.indexOf(o); if (i>-1) this.splice(i,1); return (i>-1)
}
Array.prototype.clear = function()
{
 var iLength = this.length;
 for (var i=0; i < iLength; i++)
 {
  this.shift();
 }
}
Array.prototype.addArray = function(p_a)
{
 if (p_a)
 {
  for (var i=0; i < p_a.length; i++)
  {
   this.push(p_a[i]);
  }
 }
}splice 方法
从一个数组中移除一个或多个元素,如果必要,在所移除元素的位置上插入新元素,返回所移除的元素。arrayObj.splice(start, deleteCount, [item1[, item2[, . . . [,itemN]]]])

解决方案 »

  1.   

    这种函数php中好像有,js中没有
      

  2.   

    javascript没有 自己写,如2楼的
      

  3.   

    JS里有这样的系统函数的,只是版本有点高,加上我的一些修正就OK了。//[extended method] shift  delete the first item
    if(typeof(Array.prototype.shift)!="function")
    {
      Array.prototype.shift = function()
      {
        var mm = null;
        if(this.length>0)
        {
          mm = this[0]; for(var i=1; i<this.length; i++)
          this[i-1] = this[i]; this.length = this.length - 1;
        }
        return mm;
      };
    }
    //[extended method] unique  Delete repeated item
    if(typeof(Array.prototype.indexOf)!="function")
    {
      Array.prototype.indexOf=function(item, start)
      {
        if(start==null) {start = 0;}
        else if(start<0){start = Math.max(0, this.length + start);}
        for(var i=start;i<this.length;i++){if(this[i]===item)return i;}
        return-1;
      };
    }
    var firstArray = ["green"];
    var secondArray = ["red", "green", "blue"];
    alert(secondArray.indexOf(firstArray[0]));secondArray.shift()
    alert(secondArray);
      

  4.   

    一、splicevar secondArray = ["red", "green", "blue"];
    alert(secondArray.join());  //red,green,blue
    secondArray.splice(1, 1);
    alert(secondArray.join());  //red,blue