首页 > 语言 > JavaScript > 正文

JavaScript数组方法大全(推荐)

2024-05-06 14:55:02
字体:
来源:转载
供稿:网友

数组在笔试中经常会出现的面试题,javascript中的数组与其他语言中的数组有些不同,为了方便之后数组的方法学习,下面小编给大家整理了关于数组的操作方法,一起看看吧。

数组创建

JavaScript中创建数组有两种方式,第一种是使用 Array 构造函数:

var arr1 = new Array(); //创建一个空数组var arr2 = new Array(20); // 创建一个包含20项的数组var arr3 = new Array("lily","lucy","Tom"); // 创建一个包含3个字符串的数组

创建数组的第二种基本方式是使用数组字面量表示法:

var arr4 = []; //创建一个空数组var arr5 = [20]; // 创建一个包含1项的数组var arr6 = ["lily","lucy","Tom"]; // 创建一个包含3个字符串的数组

在读取和设置数组的值时,要使用方括号并提供相应值的基于 0 的数字索引:

var arr6 = ["lily","lucy","Tom"]; // 创建一个包含3个字符串的数组alert(arr6[0]); //lilyarr6[1] = "mary"; //修改第二项为maryarr6[3] = "sean"; //增加第四项为sean

JavaScript中数组的length属性是可以修改的,看下面的示例:

var arr = ["lily","lucy","Tom"]; // 创建一个包含3个字符串的数组arr[arr.length] = "sean"; //在下标为3处(也就是数组尾部)添加一项"sean"arr.length = arr.length-1; //将数组的最后一项删除

如果需要判断一个对象是不是数组对象,在ECMAScript 5之前,我们可以通过 instanceof Array去判断,但是instanceof 操作符的问题在于,它假定只有一个全局执行环境。如果网页中包含多个框架,那实际上就存在两个以上不同的全局执行环境,从而存在两个以上不同版本的 Array 构造函数。如果你从一个框架向另一个框架传入一个数组,那么传入的数组与在第二个框架中原生创建的数组分别具有各自不同的构造函数。

ECMAScript 5 新增了 Array.isArray()方法。这个方法的目的是最终确定某个值到底是不是数组,而不管它是在哪个全局执行环境中创建的。

数组方法

下面开始介绍数组的方法,数组的方法有数组原型方法,也有从object对象继承来的方法,这里我们只介绍数组的原型方法,数组原型方法主要有以下这些:

join()
push()和pop()
shift() 和 unshift()
sort()
reverse()
concat()
slice()
splice()
indexOf()和 lastIndexOf() (ES5新增)
forEach() (ES5新增)
map() (ES5新增)
filter() (ES5新增)
every() (ES5新增)
some() (ES5新增)
reduce()和 reduceRight() (ES5新增)

针对ES5新增的方法浏览器支持情况:

Opera 11+
Firefox 3.6+
Safari 5+
Chrome 8+
Internet Explorer 9+

对于支持的浏览器版本,可以通过Array原型扩展来实现。下面详细介绍一下各个方法的基本功能。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选