遍历数组foreach,filter,some,map

forEach()

遍历数组执行操作

let arr=[1,2,3,4,5];
arr.forEach(function(value,index,array){
  console.log("每个数组元素"+value);
  console.log("每个数组索引号"+index);
  console.log("数组本身"+array);
})

filter()

array.filter(function(value,index,arr))
filter()方法通过条件return返回新数组

let arr=[1,2,3,4,5];
let list=arr.filter(function(value,index,array){
  console.log("每个数组元素"+value);
  console.log("每个数组索引号"+index);
  console.log("数组本身"+array);
    return index>2    
}) 
console.log(list) //[3,4,5]
value:数组当前项的值
index:数组当前项的索引
arr:数组对象本身

some()

1.some()方法用于检测数组的元素是否满足指定条件(查找数组是否有某元素)return返回 Boolean值

2.一旦满足条件便立即停止循环(更适合遍历查询唯一的元素,效率更高)

let arr=[12,22,32,42,15];

let bloon= arr.some(function(value,index,arr) {
      return value>100
})
console.log(bloon)false(数组中没有大于100的值)

//遍历查询唯一的元素
let list=[12,22,32,42,15];
let a=[];
arr.some(function(value,index,arr) {
     if(value==12) {
        a.push(value);
        return true  //表示找到了不在遍历查找
     }
})

map()

   var brr= arr.map((item,index,arr)=>{
        //代码
        return item * 2;
    })
    map的用法和forEach差不多。但是map是有返回值的。map会返回处理后的新数组
    arr---->[1,2,3]
    brr---->[2,4,6]
    
    


应用举例

//编辑删除
// this.selection 选中项
// 总集合
deleteData(){
var detailList=this.form.detailList.filter(Element=>{
     return !this.selection.some(elem=>Element==elem)
})
this.form.detailList=detailList;
},

版权声明:本文为TZ1284063988原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。