1.检测数组
-
1.可以使用instanceof
if(value instanceof Array){}
2.转化方法
所有的对象都具有toLocaleString()、toString()和valueOf()
var a = ['red','pink','blue'] a.toString() //'red,pink,blue' a.toLocaleString() //'red,pink,blue' a.valueOf() // ['red', 'pink', 'blue']
-
join()使用不同的分隔符构建字符串
var a = ['red','pink','blue'] a.join('||') //'red||pink||blue'
3.栈方法
-
push()添加到末尾,返回修改后数组的长度
-
pop()末尾移除一项,返回移除的项
4.队列方法
-
unshift()添加一项到开头,返回修改后数组的长度
-
shift()开头移除一项
5.重排序方法
-
reverse()反序
-
sort()先会调用toString()转型方法
var a = [1,2,4,14,5,15] a.sort() // [1, 14, 15, 2, 4, 5]
-
默认是升序
比较参数(升序方式)
function(value1,value2){ if(value1 < value2){ return -1 }else if(value1 >value2 ){ return 1 }else{ return 0 } }
-
-
splice()返回一个数组,其中包括从原始数组中删除的项,如果没有删除就返回空数组
-
删除(两个参数,是要删除的起始位置和要删除的项数)
-
插入(三个参数,是起始位置,0[删除的项数,要插入的项])
-
替换(三个参数,是起始位置,要删除的项数,要插入到任意项)
-
6.迭代方法
-
every()每一项放回true才放回true
-
filter()放回是true的项组成的数组 过滤数组
-
forEach()没有返回值, 遍历每一项
-
map()返回每次函数调用的结果组成的数组
var a = ['小米','红米','华为','苹果'] a.map(function(item){ return item+'手机' }) // ['小米手机', '红米手机', '华为手机', '苹果手机']
-
some()只要有一项为true则返回true
7.归并方法
-
reduce()从前到后遍历
-
reduceRight()从后到前遍历
接收两个参数:一个在每一项上的调用的函数和(可选)作为归并的基础值
第一个参数可接收4个参数值:前一个值、当前值、项的索引和数组对象
var a = [1,2,3,4,5] a.reduce(function(pre,cur,index,array){ return pre+cur })//15 第一次:pre = 1, cur = 2 第二次:pre = 3(1+3), cur = 3(数组中的数值) ....