js中对数组操作的封装

Posted z.ain

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js中对数组操作的封装相关的知识,希望对你有一定的参考价值。

     var arr=[1,2,3,4];

      //  1.求和
        var sum=0;
        for(var i=0;i<arr.length;i++){
             sum+=arr[i];
        }
        console.log(sum);


        //求最大值
        var max=arr[0];
        for(var i=0;i<arr.length;i++){
              if(arr[i]>max){
                   max=arr[i];
              }
        }
        console.log(max);


     //求最小值
     var min=arr[0];
     for(var i=0;i<arr.length;i++){
            if(arr[i]<min){
                 min=arr[i];
            }
     }
     console.log(min);


     //查找3的位置
     var find1=-1;
     for(var i=0;i<arr.length;i++){
            if(arr[i]===3){
                find1=i;
                break;
            }
     }
     console.log(find1);


   //查找5
     var find2=-1;
     for(var i=0;i<arr.length;i++){
            if(arr[i]===5){
                find2=i;
                break;
            }
     }
     console.log(find2);

上面是普通的方式进行的操作。

 

 

我们分析它的for循环复用了多次,所以想办法封装成一个函数来做。

    //上面的求数组的值都是有用到for循环,所以我们想办法去封装一个函数。
     var each=function(arr,fn){
            for(var i=0;i<arr.length;i++){
              fn(i,arr[i]);
            }
     }


//求和

var sum=0;
    
     each(arr,function(i,v){
             sum+=v;
     });
    console.log(sum);


//求最大值
var max=arr[0];
each(arr,function(i,v){
       if(v>max){
           max=v;
       }

});
console.log(max);


//求数组的偶数行
var even=[];
each(arr,function(i,v){
     if(i%2==0){
         even.push(v);
     }
});
console.log(even);

 

以上是关于js中对数组操作的封装的主要内容,如果未能解决你的问题,请参考以下文章

vue中对element的弹框messagebox的二次封装

Js 中对 Json 数组的常用操作

js中对数组的操作-------Day49

jdbc中对mysql数据库操作的简单封装--(仅做备忘记录)

js简洁代码片段

几个关于js数组方法reduce的经典片段