Array汇总

2018-03-13  本文已影响0人  YangJeremy

reverse() 进行反转数组

var value = [1,2,3,4,5]
value.reverse()   

console.log(value) //[5,4,3,2,1]


shift()取得数组的第一项

unshift()在数组前面添加任意项

var colors = ["green", "blue", "yellow"]
colors.unshift("aaa", "aa")
console.log(colors)      //["aaa", "aa", "green", "blue", "yellow"]

sort() 默认按升序进行排序,最小值放在前面,按照toString()转型方法来比较

var values = [0,1,5,10,15]

values.sort()   


console.log(values)     //  [0,1,10,15,5]

splice() 这个方法会改变原来的数组
替换、删除、插入都可以操作

删除第一项

var colors = ['red', 'green', 'blue']
var removed = colors.splice(0, 1)    //
console.log(colors)   //       ['green', 'blue']
console.log(removed)   //      ['red']

从位置1插入两项

var colors = ['red', 'green', 'blue']
var inserted = colors.splice(1, 0, 'orange','pink')
console.log(inserted)     //[]   空数组
console.log(colors)       //["red", "orange", "pink", "green", "blue"]

插入两项,删除一项

var colors = ['red', 'green', 'blue']
var x = colors.splice(1, 1, 'orange', 'blue')   
console.log(colors)    //["red", "orange", "blue", "blue"]   
console.log(x)         //["green"]

ES5新增方法

every()
参数是一个函数,每一项去执行,如果都是true,则返回true



filter()
传入一个函数,每一项去执行,对于返回true的项聚在一起,返回一个数组

var num = [1,2,3,4,5,6,7,8]
var fil = num.filter(function(item) {
  return (item > 2)
})

console.log(fil)    //[3, 4, 5, 6, 7, 8]

forEach()
数组中每一项运行里面的参数,没有返回值

map()
每一项都去运行里面的函数,把所有返回的结果组成一个数组

some()
每一项运行里面的函数,如果其中有一个返回true,则最后的结果是true

reduce() reduceRight()
都用来遍历数组所有的项,特点是:

  1. reduce() 从数组的第一项开始,reduceRight() 从数组的最后一项开始

  2. 接受的函数有4个参数,前一个值,当前值, 索引和数组对象

var values = [1, 2, 3, 4, 5]
var sum  = values.reduce(function(prev, cur, index, array) {
    return prev+cur
})

console.log(sum)      //15


//   reduceRight()也是同理的

上一篇 下一篇

猜你喜欢

热点阅读