2019-06-11 JS(Array对象)

(本文摘录于阮一峰老师所写文章,https://wangdoc.com/javascript/basic/index.html,作个人学习使用。)

image.png

构造函数

1、Array作为构造函数,行为很不一致。因此,不建议使用它生成新数组,直接使用数组字面量是更好的做法。

静态方法

2、Array.isArray()方法返回一个布尔值,表示参数是否为数组。它可以弥补typeof运算符的不足,typeof只能返回object。

实例方法

3、
(1)valueOf(),toString():对象的通用方法,数组的valueOf方法返回数组本身,数组的toString方法返回数组的字符串形式。

(2)push(),pop():push方法用于在数组的末端添加一个或多个元素,并返回添加新元素后的数组长度。注意,该方法会改变原数组。pop方法用于删除数组的最后一个元素,并返回该元素。注意,该方法会改变原数组。两者形成了一种栈结构(stack)。

(3)shift(),unshift():shift()方法用于删除数组的第一个元素,并返回该元素。注意,该方法会改变原数组。unshift相反。shift与push可以组成队列结构(queue)。

(4)join():join()方法以指定参数作为分隔符,将所有数组成员连接为一个字符串返回。如果不提供参数,默认用逗号分隔。如果数组成员是undefined或null或空位,会被转成空字符串。

(5)concat():concat方法用于多个数组的合并。它将新数组的成员,添加到原数组成员的后部,然后返回一个新数组,原数组不变。如果数组成员包括对象,concat方法返回当前数组的一个浅拷贝。所谓“浅拷贝”,指的是新数组拷贝的是对象的引用。

(6)reverse():reverse方法用于颠倒排列数组元素,返回改变后的数组。注意,该方法将改变原数组。

(7)slice():slice方法用于提取目标数组的一部分,返回一个新数组,原数组不变。slice方法的一个重要应用,是将类似数组的对象转为真正的数组。
Array.prototype.slice.call({ 0: 'a', 1: 'b', length: 2 }) // ['a', 'b']

(8)splice():splice方法用于删除原数组的一部分成员,并可以在删除的位置添加新的数组成员,返回值是被删除的元素。注意,该方法会改变原数组。

(9)map():map方法将数组的所有成员依次传入参数函数,然后把每一次的执行结果组成一个新数组返回。map方法的回调函数有三个参数,elem为当前成员的值,index为当前成员的位置,arr为原数组([1, 2, 3])。

(10)forEach():forEach方法与map方法很相似,也是对数组的所有成员依次执行参数函数。但是,forEach方法不返回值,只用来操作数据。这就是说,如果数组遍历的目的是为了得到返回值,那么使用map方法,否则使用forEach方法。

(11)filter():filter方法用于过滤数组成员,满足条件的成员组成一个新数组返回。它的参数是一个函数,所有数组成员依次执行该函数,返回结果为true的成员组成一个新数组返回。该方法不会改变原数组。

(12)reduce()、reduceRight():reduce方法和reduceRight方法依次处理数组的每个成员,最终累计为一个值。它们的差别是,reduce是从左到右处理(从第一个成员到最后一个成员),reduceRight则是从右到左(从最后一个成员到第一个成员),其他完全一样。

你可能感兴趣的:(2019-06-11 JS(Array对象))