JavaScript数组函数unshift、shift、pop、push使用实例_javascript技巧

js教程评论525 views阅读模式

如何声明数组

s中数组的声明可以有几种方式声明

复制代码 代码如下:

var tmp = []; // 简写模式

var tmp = new Array(); // 直接new一个

var tmp = Array(); // 或者new也可以

在new数组的时候可以传入一个参数,表示数组的初始化长度

复制代码 代码如下:

// new的时候传入一个参数表示初始化数组长度

var tmp = new Array(3);

alert(tmp.length); // 3

但如果你想创建一个只有一个元素3的数组,那么使用 new 方法是不能实现的,因为系统会把你传入的3当作数组的长度,除非你使用引号引起来当作字符串,如

复制代码 代码如下:

var tmp = new Array('3');

alert(tmp); // 3

我们可以使用简写模式创建数组,这样就可以创建只有一个数字元素3的数组

复制代码 代码如下:

var tmp = [3]

alert(typeof tmp[0]); // number

也可以初始多个元素,并且元素的值可以是任意类型

复制代码 代码如下:

// 简约模式创建数组

// 数组的元素可以是任意一种数据类型

var tmp = [3,true,8.5,{'name':'lizhong'},['a','b']];

alert(tmp.length); // 5

一、unshift 在数组第一个元素前插入元素

复制代码 代码如下:

// 使用unshift在数组第一个元素前插入元素

// 返回数组长度

var tmp = ['a','b'];

var len = tmp.unshift('c');

alert(len); // 3

alert(tmp); // c,a,b

也可以一次插入多个元素,顺序依次从左边排起

复制代码 代码如下:

// 使用unshift在数组第一个元素前插入元素

// 返回数组长度

var tmp = ['a','b'];

var len = tmp.unshift('c','d');

alert(len); // 4

alert(tmp); // c,d,a,b

二、shift弹出数组第一个元素,返回被弹出的元素值

小实例:

复制代码 代码如下:

// 使用shift弹出数组第一个元素

// 返回被弹出的元素值

var tmp = ['a','b','c'];

var val = tmp.shift();

alert(val); // a

alert(tmp); // b,c

如果是一个空数组:

复制代码 代码如下:

// 使用shift弹出数组第一个元素

// 返回被弹出的元素值

var tmp = [];

var val = tmp.shift();

alert(val); // undefined

alert(tmp); // 空

三、push在数组末尾添加元素

跟unshift相反,push在数组末尾添加元素,返回添加元素以后的数组长度

复制代码 代码如下:

// 使用push在数组末尾添加多个元素

// 返回数组最新长度

var tmp = ['a','b','c'];

var len = tmp.push('d');

alert(len); // 4

alert(tmp); // a,b,c,d

也可以一次添加多个元素

复制代码 代码如下:

// 使用push在数组末尾添加多个元素

// 返回数组最新长度

var tmp = ['a','b','c'];

var len = tmp.push('d','e','f');

alert(len); // 6

alert(tmp); // a,b,c,d,e,f

四、pop函数删除数组末尾元素

跟shift相反,pop弹出的是数组末尾元素,返回被弹出的元素值

复制代码 代码如下:

// 使用pop弹出数组末尾元素

// 返回被弹出的元素值

var tmp = ['a','b','c'];

var val = tmp.pop();

alert(val); // c

alert(tmp); // a,b

如果数组为空,返回undefined

复制代码 代码如下:

// 使用pop弹出数组末尾元素

// 返回被弹出的元素值

var tmp = [];

var val = tmp.pop();

alert(val); // undefined

alert(tmp); // 空

利用以上四个函数,我们可以做一些队列处理,具体案例就不写代码了。

push功能其实也可以这么实现

复制代码 代码如下:

var tmp = ['a','b','c'];

tmp[tmp.length] = 'd';

alert(tmp); // a,b,c,d

注意:以上四个函数unshift、shift、pop、push函数操作都会在数组本身上修改。

企鹅博客
  • 本文由 发表于 2019年9月7日 10:15:26
  • 转载请务必保留本文链接:https://www.qieseo.com/417319.html

发表评论