第一种:forEach可以遍历数组,也可以遍历正在遍历数组的下标

  1. var arr1=[15,32,95,54,63,66,88,66].forEach(function(item,index){
  2. console.log(item) //正在遍历的数组
  3. console.log(index) //正在遍历数组的索引
  4. })

第二种:map批量对数组进行操作,然后返回一个新的数组

  1. var arr2=[15,32,95,54,63,66,88,66].map(function(item){
  2. return item*10
  3. })
  4. console.log(arr1) //对数组元素进行批量操作 返回一个新数组 不影响旧数组

第三种对满足的条件的的数组元素进行筛选与过滤,然后返回一个新的数组

  1. var arr3=[15,32,95,54,63,66,88,66].filter(function(item){
  2. return item>10
  3. })
  4. console.log(arr2) //对数组元素进行检验和过滤 返回一个新数组 不影响旧数组

第四种,尝试证明满足条件的一个的数组,如果满足找到其中一个满足就不在进行查找下去,就终止程序,直接返回true

  1. var arr4=[15,32,95,54,63,66,88,66].some(function(item){
  2. return item>10
  3. })
  4. console.log(arr4) // 尝试证明数组中至少一个元素符合条件 返回值布尔值

第五种,尝试证明满足条件的全部数组,如果找到第一个不满足条件就不继续往下进行遍历,就直接返回flase.

  1. var arr5=[15,32,95,54,63,66,88,66].every(function(item){
  2. return item>10
  3. })
  4. console.log(arr5) // 尝试证明数组中全部符合条件 返回值布尔值

第六种,尝试去寻找满足条件的数组,满足就找到了,返回找到数组的下标,没有找到就直接返回-1

  1. var arr6=[15,32,95,54,63,66,88,66].findIndex(function(item){
  2. return item>10
  3. })
  4. console.log(arr6) // 根据条件寻找符合条件的第1个元素的索引 返回数组的下标,不成功返回-1

用every和some替代forEach函数。every在碰到return false的时候,中止循环。some在碰到return ture的时候,中止循环