admin 管理员组

文章数量: 887016

js 数组 pop,push,unshift,splice,shift

<script>   
Array.prototype.pop=function(){   
     if(this.length!=0)this.length--;   
     return this;   
     }   
/*  
pop 方法  
移除数组中的最后一个元素并返回该元素。  
 
arrayObj.pop( )  
 
必选的 arrayObj 引用是一个 Array 对象。  
 
说明  
如果该数组为空,那么将返回 undefined。  
*/   
var a=[1,2,3,4]   
a.pop()   
alert(a)   
alert(a.pop())</script><script>   
/*  
push 方法  
将新元素添加到一个数组中,并返回数组的新长度值。  
 
arrayObj.push([item1 [item2 [. . . [itemN ]]]])  
 
参数  
arrayObj  
 
必选项。一个 Array 对象。  
 
item, item2,. . . itemN  
 
可选项。该 Array 的新元素。  
 
说明  
push 方法将以新元素出现的顺序添加这些元素。如果参数之一为数组,那么该数组将作为单个元素添加到数组中。如果要合并两个或多个数组中的元素,请使用 concat 方法。  
 
 
*/   
Array.prototype.push=function(){   
     var len=arguments.length;   
     if(len>0)for(var i=0;i<len;i++)this[this.length]=arguments[i];   
     return this.length;   
     }   
var a=[1,2,3,4]   
a.push(5)   
alert(a)   
alert(a.push(6))</script><script>   
/*  
unshift 方法  
将指定的元素插入数组开始位置并返回该数组。  
 
arrayObj.unshift([item1[, item2 [, . . . [, itemN]]]])  
 
参数  
arrayObj  
 
必选项。一个 Array 对象。  
 
item1, item2,. . .,itemN  
 
可选项。将插入到该 Array 开始部分的元素。  
 
说明  
unshift 方法将这些元素插入到一个数组的开始部分,所以这些元素将以参数序列中的次序出现在数组中。  
 
 
*/   
Array.prototype.unshift=function(){   
     var len=arguments.length;   
     this.reverse();   
     if(len>0)for(var i=len;i>0;i--)this[this.length]=arguments[i-1];   
     return this.reverse();   
     }   
var a=[1,2,3,4]   
a.unshift()   
alert(a)   
a.unshift(5,6)   
alert(a)   
alert(a.unshift(7))</script><script language="JScript">   
Array.prototype.splice=function(){   
     var len=arguments.length;   
     var tarray=[];   
     if(len>1){   
         for(var i=arguments[0]+arguments[1];i<this.length;i++)tarray[tarray.length]=this[i];   
         this.length=arguments[0];   
         if(len>2)for(var i=2;i<len;i++)this[this.length]=arguments[i];   
         var tlen=tarray.length;   
         for(var i=0;i<tlen;i++)this[this.length]=tarray[i];   
         }   
     return this;   
     }   
var a=[1,2,3,4];   
/*  
splice 方法  
从一个数组中移除一个或多个元素,如果必要,在所移除元素的位置上插入新元素,返回所移除的元素。  
 
arrayObj.splice(start, deleteCount, [item1[, item2[, . . . [,itemN]]]])  
 
参数  
arrayObj  
 
必选项。一个 Array 对象。  
 
start  
 
必选项。指定从数组中移除元素的开始位置,这个位置是从 0 开始计算的。  
 
deleteCount  
 
必选项。要移除的元素的个数。  
 
item1, item2,. . .,itemN  
 
必选项。要在所移除元素的位置上插入的新元素。  
 
说明  
splice 方法可以移除从 start 位置开始的指定个数的元素并插入新元素,从而修改 arrayObj。返回值是一个由所移除的元素组成的新 Array 对象。  
*/   
alert(a.splice(0,1));   
alert(a.splice(0,1,1,1,1,1,1,1,1))   
</script><script>   
Array.prototype.shift=function(){   
     var f=this[0];   
     for(var i=0;i<this.length;i++)this[i]=this[i+1];   
     this.length--;   
     return f;   
     }   
/*  
shift 方法  
移除数组中的第一个元素并返回该元素。  
 
arrayObj.shift( )  
 
必选的 arrayObj 引用是一个 Array 对象。  
 
说明  
shift 方法可移除数组中的第一个元素并返回该元素。  
 
*/var a=[1,2]   
alert(a.shift())   
alert(a)   
</script>  

 

转自:

本文标签: js 数组 pop push unshift splice shift