JavaScript数组函数unshift、shift、pop、push使用实例
如何声明数组
s中数组的声明可以有几种方式声明
vartmp=[]; //简写模式 vartmp=newArray();//直接new一个 vartmp=Array(); //或者new也可以
在new数组的时候可以传入一个参数,表示数组的初始化长度
//new的时候传入一个参数表示初始化数组长度 vartmp=newArray(3); alert(tmp.length); //3
但如果你想创建一个只有一个元素3的数组,那么使用new方法是不能实现的,因为系统会把你传入的3当作数组的长度,除非你使用引号引起来当作字符串,如
vartmp=newArray('3'); alert(tmp); //3
我们可以使用简写模式创建数组,这样就可以创建只有一个数字元素3的数组
vartmp=[3] alert(typeoftmp[0]); //number
也可以初始多个元素,并且元素的值可以是任意类型
//简约模式创建数组 //数组的元素可以是任意一种数据类型 vartmp=[3,true,8.5,{'name':'lizhong'},['a','b']]; alert(tmp.length);//5
一、unshift在数组第一个元素前插入元素
//使用unshift在数组第一个元素前插入元素 //返回数组长度 vartmp=['a','b']; varlen=tmp.unshift('c'); alert(len);//3 alert(tmp);//c,a,b
也可以一次插入多个元素,顺序依次从左边排起
//使用unshift在数组第一个元素前插入元素 //返回数组长度 vartmp=['a','b']; varlen=tmp.unshift('c','d'); alert(len);//4 alert(tmp);//c,d,a,b
二、shift弹出数组第一个元素,返回被弹出的元素值
小实例:
//使用shift弹出数组第一个元素 //返回被弹出的元素值 vartmp=['a','b','c']; varval=tmp.shift(); alert(val);//a alert(tmp);//b,c
如果是一个空数组:
//使用shift弹出数组第一个元素 //返回被弹出的元素值 vartmp=[]; varval=tmp.shift(); alert(val);//undefined alert(tmp);//空
三、push在数组末尾添加元素
跟unshift相反,push在数组末尾添加元素,返回添加元素以后的数组长度
//使用push在数组末尾添加多个元素 //返回数组最新长度 vartmp=['a','b','c']; varlen=tmp.push('d'); alert(len);//4 alert(tmp);//a,b,c,d
也可以一次添加多个元素
//使用push在数组末尾添加多个元素 //返回数组最新长度 vartmp=['a','b','c']; varlen=tmp.push('d','e','f'); alert(len);//6 alert(tmp);//a,b,c,d,e,f
四、pop函数删除数组末尾元素
跟shift相反,pop弹出的是数组末尾元素,返回被弹出的元素值
//使用pop弹出数组末尾元素 //返回被弹出的元素值 vartmp=['a','b','c']; varval=tmp.pop(); alert(val);//c alert(tmp);//a,b
如果数组为空,返回undefined
//使用pop弹出数组末尾元素 //返回被弹出的元素值 vartmp=[]; varval=tmp.pop(); alert(val);//undefined alert(tmp);//空
利用以上四个函数,我们可以做一些队列处理,具体案例就不写代码了。
push功能其实也可以这么实现
vartmp=['a','b','c']; tmp[tmp.length]='d'; alert(tmp);//a,b,c,d
注意:以上四个函数unshift、shift、pop、push函数操作都会在数组本身上修改。