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 CSS样式控制 学习笔记
Jul 23 Javascript
jquery1.4.2 for Visual studio 2010 模板文件
Jul 14 Javascript
javascript学习笔记(三)显示当时时间的代码
Apr 08 Javascript
jquery选择器需要注意的问题
Nov 26 Javascript
javascript日期验证之输入日期大于等于当前日期
Dec 13 Javascript
js操作cookie保存浏览记录的方法
Dec 25 Javascript
JavaScript中用let语句声明作用域的用法讲解
May 20 Javascript
仿iframe效果Aajx文件上传实例
Nov 18 Javascript
JS使用Prim算法和Kruskal算法实现最小生成树
Jan 17 Javascript
JS实现求字符串中出现最多次数的字符和次数示例
Jul 05 Javascript
three.js利用卷积法如何实现物体描边效果
Nov 27 Javascript
微信小程序基础教程之echart的使用
Jun 01 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
ThinkPHP中自定义目录结构的设置方法
2014/08/15 PHP
高性能web开发 如何加载JS,JS应该放在什么位置?
2010/05/14 Javascript
基于jquery的finkyUI插件与Ajax实现页面数据加载功能
2010/12/03 Javascript
百度判断手机终端并自动跳转js代码及使用实例
2014/06/11 Javascript
JavaScript截取字符串的2个函数介绍
2014/08/27 Javascript
BootStrap响应式导航条实例介绍
2016/05/06 Javascript
基于jQuery的AJAX和JSON实现纯html数据模板
2016/08/09 Javascript
Javascript中for循环语句的几种写法总结对比
2017/01/23 Javascript
Vue中使用webpack别名的方法实例详解
2018/06/19 Javascript
更改BootStrap popover的默认样式及popover简单用法
2018/09/13 Javascript
webpack结合express实现自动刷新的方法
2019/05/07 Javascript
基于JS判断对象是否是数组
2020/01/10 Javascript
JavaScript原型继承和原型链原理详解
2020/02/04 Javascript
openlayers实现地图测距测面
2020/09/25 Javascript
用js实现放大镜效果
2020/10/28 Javascript
[51:53]DOTA2-DPC中国联赛 正赛 RNG vs Dragon BO3 第二场 1月24日
2021/03/11 DOTA
使用C语言扩展Python程序的简单入门指引
2015/04/14 Python
Windows安装Python、pip、easy_install的方法
2017/03/05 Python
将python代码和注释分离的方法
2018/04/21 Python
在python3中pyqt5和mayavi不兼容问题的解决方法
2019/01/08 Python
利用rest framework搭建Django API过程解析
2019/08/31 Python
python设置随机种子实例讲解
2019/09/12 Python
在pytorch中实现只让指定变量向后传播梯度
2020/02/29 Python
Python如何向SQLServer存储二进制图片
2020/06/08 Python
学生如何注册Pycharm专业版以及pycharm的安装
2020/09/24 Python
北美三大旅游网站之一:Travelocity加拿大
2016/08/20 全球购物
Lookfantastic澳大利亚官网:英国知名美妆购物网站
2021/01/07 全球购物
如何查找和删除数据库中的重复数据
2014/11/05 面试题
最新的咖啡店创业计划书
2013/12/30 职场文书
党员学习十八大感想
2014/01/17 职场文书
餐厅经理岗位职责范本
2014/02/17 职场文书
公司门卫岗位职责
2014/03/15 职场文书
节能环保标语
2014/06/12 职场文书
爱国口号
2014/06/19 职场文书
个人承诺书格式范文
2015/04/29 职场文书
CSS几步实现赛博朋克2077风格视觉效果
2021/06/16 HTML / CSS