-
检测数组
if (Array.isArray(value)) { //对数组执行某些操作 }
-
转换方法
toString()
返回由数组中每个值的字符串形式拼接而成的一个以逗号分隔的字符串;
valueOf()
返回最适合该对象类型的原始值,即数组;
toLocaleString()
join()
可以使用不同的分隔符来构建字符串 -
栈方法(LIFO--Last-In-First-Out--后进先出)
push()
可以接受任意数量的参数,把他们逐个添加到数组末尾,并返回修改后数组的长度;
pop()
从数组末尾移除最后一项,减少数组的length值,并返回移除的项。 -
队列方法(FIFO--First-In-First-Out--先进先出)
shift()
移除数组中的第一个项并返回该项,同时将数组长度减1;
unshift()
在数组前端添加任意个项并返回新数组的长度。 -
重排序方法
reverse()
,sort()
-
操作方法
concat()
这个方法会先创建当前数组的一个副本,然后将接收到的参数添加到这个副本的末尾,最后返回新构建的数组;
concat()示例
slice()
基于当前数组中的一或多个项创建一个新数组。在只有一个参数的情况下,返回从该参数指定位置开始到当前数组末尾的所有项;如果有两个参数,该方法返回起始和结束位置之间的项——单不包括结束位置的项。
slice()示例
splice()
主要用途是向数组的中部插入项
splice()使用方法
splice()示例
-
位置方法
indexOf()
从数组的开头(位置0)开始向后查找;
lastIndexOf()
从数组的末尾开始向前查找。
这两个方法都接收两个参数:要查找的项和(可选的)表示查找起点位置的索引。 -
迭代方法(5个)
every()
对数组中的每一项运行给定函数,如果该函数对每一项都返回true,则返回true;
filter()
对数组中的每一项运行给定函数,返回该函数会返回true的项组成的数组;
forEach()
对数组中的每一项运行给定函数,这个函数没有返回值;
map()
对数组中的每一项运行给定函数,返回每次函数调用的结果组成的数组;
some()
对数组中的每一项运行给定函数,如果该函数对任一项返回true,则返回true。
以上方法中函数会接收三个参数:数组项的值、该项在数组中的位置和数组对象本身。
参数示例
-
缩小方法
reduce()
从数组第一项开始,逐个遍历到最后;
reduceRight()
从数组的最后一项开始,向 前遍历到第一项(与reduce()执行方向相反)。
这两个方法都接收两个参数:一个在每一项上调用的函数和(可选的)作为缩小基础的初始值;传给reduce()和reduceRight()的函数接收4个参数:前一个值、当前值、项的索引和数组对象。var values = [1,2,3,4,5]; var sum = values.reduce(function(prev, curr, index, array) { return prev + cur; }); alert(sum);//15
网友评论