对于数组来说,es6里面新增了很多操作数组和对象的方法,下面对这些操作数组的方法进行一下整理。
数组方法
1.arr.forEach()
foreach和普通for循环基本没有什么区别,只是形式简单一些。
foreach,map,filter,some,every循环都可以接收两个参数,第一个参数就是循环的回调函数,第二个参数就是this指向谁。
2.arr.map()
map经常使用在数据交互的过程中,重新整理获取到的数据结构。例如
{title:"标题",read:"100"}
修改后为
{t:"标题",r:"100"}
正常情况下需要配合return
使用,返回一个新的数组。当没有return
的时候相当于foreach。
注意:使用map的时候都要有return
。
3. arr.filter()
filter就是过滤的意思。此方法用来过滤一些不合条件的元素。如果回调函数返回的是true,就留下来。
4. arr.some()/arr.every()
some类似查找。数组里面某一个元素符合条件,就返回true。
every则是数组里面所有的元素都符合条件,才返回true。
//判断数组里是否都是奇数
let arr = [1,3,5,7,9]
let b = arr.every((val, index, arr)=>{
return val % 2 == 1
})
console.log(b);//true
以上的几个方法接收的参数都是value,index,arr。
5. arr.reduce()/reduceRight()
reduce可以用来求数组的和。
reduce的接收参数是prev, cur, index, arr
reduceRight是从右往左
//求arr的和
let arr = [1,2,3]
arr.reduce(