js数组操作---方法篇

竟然有这么多方法~~~~~~~~~

栈方法----------后进先出

push()---接收任意数量参数,把它们逐个添加到数组末尾,返回修改后数组的长度

pop()---从数组末尾移除最后一项,数组长度减1,返回移除的项

 

队列方法--------先进先出

push()

shift()---移除数组中的第一项并返回该项,数组长度减1

 

重排序方法

reverse()---反转

sort()---按升序排列,比较的是字符串,可以接收一个比较函数

function compare(value1,value2){

  if(value1 < value2){

    return -1;

  }else if(value1 > value2){

    return 1;

  }else {

    return 0;

  }

}

 

操作方法

concat()---创建当前数组的副本,将接收到的参数添加到这个副本的末尾,最好返回新构建的数组

slice()---接收1到2个参数,返回起始和结束位置之间的项,但不包括结束位置的项

splice()---3种用法,始返一个数组,数组包含从原始数组中删除的项

  删除---splice(0,2)

  插入---splice(2,0,'red','green')

  替换---splice(2,1,'red','green')

 

位置方法---返回要查找项在数组中的位置

indexOf()---从数组开头开始向后查找

lastIndexOf()---从数组末尾开始向前查找

 

迭代方法---接收两个参数,在每一项上运行的函数和(可选的)运行该函数的作用域对象--影响this的值

every()---每一项为true,返回true

filter()---返回该函数会返回true的项组成的数组

forEach()---没有返回值

map()---返回结果组成的数组

some()---函数任一项返回true,则返回true

 

归并方法---返回最终值

reduce()---接收4个参数,前一个值,当前值,项的索引,数组对象,函数返回的值都会作为第一个参数自动传给下一项

  var values = [1,2,3,4,5];

  var sum = values.reduce((prev,cur,index,array)=> {return prev + cur})

  alert(sum);   //15

reduceRight()---数组执行顺序相反

posted @ 2018-09-04 14:19  jocoso  阅读(135)  评论(0)    收藏  举报