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 相关文章推荐
JavaScript使用prototype定义对象类型(转)[
Dec 22 Javascript
关于document.cookie的使用javascript
Oct 29 Javascript
JavaScript实现表格快速变色效果代码
Aug 19 Javascript
jQuery旋转木马式幻灯片轮播特效
Dec 04 Javascript
Angular1.x自定义指令实例详解
Mar 01 Javascript
正则 js分转元带千分符号详解
Mar 08 Javascript
angular2模块和共享模块详解
Apr 08 Javascript
vue项目打包之后背景样式丢失的解决方案
Jan 17 Javascript
微信小程序生成海报分享朋友圈的实现方法
May 06 Javascript
vue 根据选择条件显示指定参数的例子
Nov 09 Javascript
javascript Canvas动态粒子连线
Jan 01 Javascript
在vue中使用vant TreeSelect分类选择组件操作
Nov 02 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 adodb连接带密码access数据库实例,测试成功
2008/05/14 PHP
PHP自定义函数获取URL中一级域名的方法
2016/08/23 PHP
php事件驱动化设计详解
2016/11/10 PHP
基于win2003虚拟机中apache服务器的访问
2017/08/01 PHP
thinkphp5 URL和路由的功能详解与实例
2017/12/26 PHP
laravel框架中间件简单使用方法示例
2020/01/25 PHP
十分钟打造AutoComplete自动完成效果代码
2009/12/26 Javascript
JS常用表单验证方法总结
2014/05/22 Javascript
js监听鼠标点击和键盘点击事件并自动跳转页面
2014/09/24 Javascript
jquery实现倒计时功能
2015/12/28 Javascript
bootstrap3 兼容IE8浏览器!
2016/05/02 Javascript
浅谈Javascript中的函数、this以及原型
2016/10/09 Javascript
Vue2.0 实现单选互斥的方法
2018/04/13 Javascript
3分钟读懂移动端rem使用方法(推荐)
2019/05/06 Javascript
React实现阿里云OSS上传文件的示例
2020/08/10 Javascript
50行代码实现贪吃蛇(具体思路及代码)
2013/04/27 Python
Python ORM框架SQLAlchemy学习笔记之数据添加和事务回滚介绍
2014/06/10 Python
在Python程序中操作文件之flush()方法的使用教程
2015/05/24 Python
python爬虫之BeautifulSoup 使用select方法详解
2017/10/23 Python
详解Python3.6的py文件打包生成exe
2018/07/13 Python
利用django model save方法对未更改的字段依然进行了保存
2020/03/28 Python
如何搭建pytorch环境的方法步骤
2020/05/06 Python
Python字符串格式化f-string多种功能实现
2020/05/07 Python
Python selenium模块实现定位过程解析
2020/07/09 Python
Manjaro、pip、conda更换国内源的方法
2020/11/17 Python
Charles&Keith美国官方网站:新加坡快时尚鞋类和配饰零售商
2019/11/27 全球购物
惠普新加坡官方商店:HP Singapore
2020/04/17 全球购物
为什么使用接口?
2014/08/13 面试题
常用UNIX 命令(Linux的常用命令)
2015/12/26 面试题
工程材料采购方案
2014/05/18 职场文书
个人自荐材料
2014/05/23 职场文书
档案工作汇报材料
2014/08/21 职场文书
年终工作总结范文2014
2014/11/27 职场文书
班主任自我评价范文
2015/03/11 职场文书
Python中json.load()和json.loads()有哪些区别
2021/06/07 Python
一次MySQL启动导致的事故实战记录
2021/09/15 MySQL