一、转换方法
1.toString():
返回数组的字符串表示,每个值的字符串表示拼接成一个字符串,中间用逗号隔开
var arr = ["red","yellow","blue"]; alert(arr.toString()); //red,yellow,blue
2.valueOf():
调用结果和toString()一样
var arr = ["red","yellow","blue"]; alert(arr.valueOf()); //red,yellow,blue
3.toLocaleString():
该方法经常会返回与toString()和valueOf()方法相同的值,不同之处在于它调用的是每一项的toLocaleString()方法
4.join():
该方法可以将数组转化成字符串,默认情况下会以逗号分隔的字符串形式返回数组项,只接收一个参数,用作分隔符的字符串
var arr = ["red","yellow","blue"]; alert(arr.join(“||”)); //red||yellow||blue
二、栈方法
1.push():
可以接收任意数量的参数,把它们逐个添加到数组末尾,返回新数组的长度
2.pop():
从数组末尾移除最后一项,减少数组的length值,返回被删除项
三、队列方法
1.shift():
移除数组第一项数组长度减一,返回给删除项
2.unshift();
可以接收任意数量的参数,把它们逐个添加到数组前端,返回新数组的长度
四、重排序方法
1.reverse():
翻转数组的顺序
var arr=[1,2,3,4,5]; alert(arr.reverse()); //5,4,3,2,1
2.sort():
默认情况下sort()会调用数组每一项的toString()方法,然后比较得到的字符串,按升序排列
var arr = [ 15, 11, 22,5,3]; alert(arr.sort()); //1,15,22,3,5
这样的排序显然是不正确的,sort()方法可以接收一个比较函数作为参数,以便我们指定哪个值位于哪个值前面,可以简化为:function compare(value1,value2){ if(value1<value2){ return -1; }else if(value1>value2){ return 1; }else{ return 0; } }
function compare(value1,value2){ return value1-value2; } var arr = [3,1,15,22]; alert(arr.sort(compare)); //1,3,15,22
五、操作方法
1.concat():
复制当前数组的一个副本,然后将接收到的参数添加到数组的末尾,返回新构建的数组。
2.slice();
可以接收一个或两个参数,即要返回项的起始和结束位置。只有一个参数时,slice方法返回从指定位置到数组末尾的所有项,如果有两个参数,该方法返回起始和结束位置之间的项(不包括结束位置的项),不会影响原始数组。
注意:如果slice()方法中的参数有一个是负数,则用数组长度加上slice来确定相应的位置,如果计算的结束位置小于开始位置,返回空数组。
3.splice():
(1)删除:2个参数,删除第一项的位置和要删除的项数
(2)插入:3个参数,起始位置,0(要删除的项数),要插入的项
(3)替换:3个参数,起始位置,要删除的项数和要插入的任意数量的项。
返回一个数组,该数组中包含从原始数组中删除的项,若没有删除,则返回空数组。
六、位置方法
1.indexOf():
2个参数,要查找的项和表示查找起点未知的索引,返回项在数组中的位置,没找到返回-1(查找过程中使用权等操作符)
2.lastIndexOf():
2个参数,要查找的项和表示查找起点未知的索引,返回项在数组中的位置,没找到返回-1,从数组末尾开始查找(查找过程中使用权等操作符)
七、迭代方法:
1.every():
对数组中的每一项运行给定函数,若数组的每一项都返回true,则返回true。
2.filter():
对数组中的每一项运行给定函数,返回该函数返回true的项组成的数组。
3.forEach():
对数组中的每一项运行给定函数,无返回值。
4.map():
对数组中的每一项运行给定函数,返回每次函数调用的结果组成的数组。
5.some():
对数组中的每一项运行给定函数,如果该函数对任一项返回true,则返回true。
八、归并方法
1.reduce():
从数组的第一项开始,遍历整个数组。
两个参数:每一项上调用的函数,归并的初始值(可选)。
传入reduce()的函数接收四个参数:前一个值,当前值,项的索引和数组对象。
var arr = [3,1,15,22]; var sum = arr.reduce(function(prev,cur,index,array){ return prev + cur; }) alert(sum); //41
2.reduceRight():
从数组的最后一项开始,向前遍历到第一项。
两个参数:每一项上调用的函数,归并的初始值(可选)。
传入reduceRight()的函数接收四个参数:前一个值,当前值,项的索引和数组对象。