js 数组操作之pop,push,unshift,splice,shift


Posted in Javascript onJanuary 29, 2014
<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>   
Javascript 相关文章推荐
jQuery 的全选(全非选)即取得被选中的值使用介绍
Nov 12 Javascript
javascript学习笔记(四)function函数部分
Sep 30 Javascript
解决jQuery使用JSONP时产生的错误
Dec 02 Javascript
JSONObject使用方法详解
Dec 17 Javascript
JavaScript实现弹出模态窗体并接受传值的方法
Feb 12 Javascript
java中String类型变量的赋值问题介绍
Mar 23 Javascript
Jquery 自定义事件实现发布/订阅的简单实例
Jun 12 Javascript
AngularJS ng-app 指令实例详解
Jul 30 Javascript
KVM虚拟化技术之使用Qemu-kvm创建和管理虚拟机的方法
Oct 05 Javascript
jQuery实现百度登录框的动态切换效果
Apr 21 jQuery
vue 修改 data 数据问题并实时显示的方法
Aug 27 Javascript
JavaScript 实现拖拽效果组件功能(兼容移动端)
Nov 11 Javascript
js中的preventDefault与stopPropagation详解
Jan 29 #Javascript
js正则表达式中test,exec,match方法的区别说明
Jan 29 #Javascript
js的正则test,match,exec详细解析
Jan 29 #Javascript
js正则表达exec与match的区别说明
Jan 29 #Javascript
jquery实现input输入框实时输入触发事件代码
Jan 28 #Javascript
用jquery等比例控制图片宽高的具体实现
Jan 28 #Javascript
jQuery实现当按下回车键时绑定点击事件
Jan 28 #Javascript
You might like
简单的php 验证图片生成函数
2009/05/21 PHP
PHP 分页类(模仿google)-面试题目解答
2009/09/13 PHP
基于Windows下Apache PHP5.3.1安装教程
2010/01/08 PHP
php实现异步数据调用的方法
2015/12/24 PHP
thinkphp自定义权限管理之名称判断方法
2017/04/01 PHP
CL vs ForZe BO5 第一场 2.13
2021/03/10 DOTA
jqPlot jquery的页面图表绘制工具
2009/07/25 Javascript
基于jQuery实现左右div自适应高度完全相同的代码
2012/08/09 Javascript
windows系统下简单nodejs安装及环境配置
2013/01/08 NodeJs
同域jQuery(跨)iframe操作DOM(实例讲解)
2013/12/19 Javascript
收集json解析的四种方法分享
2014/01/17 Javascript
浅谈 jQuery 事件源码定位问题
2014/06/18 Javascript
DOM节点的替换或修改函数replaceChild()用法实例
2015/01/12 Javascript
js鼠标点击图片切换效果实现代码
2015/11/19 Javascript
Bootstrap+jfinal退出系统弹出确认框的实现方法
2016/05/30 Javascript
javascript超过容器后显示省略号效果的方法(兼容一行或者多行)
2016/07/14 Javascript
Nodejs基于LRU算法实现的缓存处理操作示例
2017/03/17 NodeJs
JavaScript内存泄漏的处理方式
2017/11/20 Javascript
vue elementui el-form rules动态验证的实例代码详解
2019/05/23 Javascript
jQuery实现轮播图效果
2019/11/26 jQuery
Vue数据双向绑定原理实例解析
2020/05/15 Javascript
Python探索之ModelForm代码详解
2017/10/26 Python
django正续或者倒序查库实例
2020/05/19 Python
python 调用Google翻译接口的方法
2020/12/09 Python
如何查看在weblogic中已经发布的EJB
2012/06/01 面试题
PHP使用Redis队列执行定时任务实例讲解
2021/03/24 PHP
工商管理专业实习生自我鉴定
2013/09/29 职场文书
家长写给老师的建议书
2014/03/13 职场文书
廉洁家庭事迹材料
2014/05/15 职场文书
以幸福为主题的活动方案
2014/08/22 职场文书
党校学习党性分析材料
2014/12/19 职场文书
淮阳太昊陵导游词
2015/02/10 职场文书
2015年组织部工作总结
2015/04/03 职场文书
2015年材料员工作总结
2015/04/30 职场文书
《平移和旋转》教学反思
2016/02/19 职场文书
详解JS数组方法
2021/11/20 Javascript