zoukankan      html  css  js  c++  java
  • 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);
    sometimes the hardest part isn't letting go,but rather start over
  • 相关阅读:
    关于如在本地虚拟机上linux系统上设置静态的ip地址
    编程规约(下)-阿里巴巴Java开发手册
    编程规约(上) -- 阿里巴巴Java开发手册
    eclipse项目导入到idea
    博客收藏
    springboot springcloud
    idea配置maven仓库
    理项目
    日志管理
    [置顶] 2016年终总结
  • 原文地址:https://www.cnblogs.com/zhumeiming/p/9841066.html
Copyright © 2011-2022 走看看