zoukankan      html  css  js  c++  java
  • es6 最新函数封装(简易版)

    map封装:

    Array.prototype.map=function(fn){
        var arr=this;
        var newArr=[]
        for(var i=0;i<arr.length;i++){
            var ele=fn(arr[i],i);
            newArr.push(ele);    
        }
        return newArr;
    }

    reduce封装:

    Array.prototype.reduce=function(fn,init){
        var arr=this;
        for(var i=0;i<arr.length;i++){
         init=fn(init,arr[i],i);
        }
        return init;    
    }

    some封装:

    Array.prototype.some=function(fn){
        var arr=this;
        for(var i=0;i<arr.length;i++){
            var flag=fn(arr[i],i);
            if(flag){
                return true;
                break;
            }
        }
        return false;
    }

    every封装:

    Array.prototype.every1=function(fn){
        var arr=this;
        for(var i=0;i<arr.length;i++){
            var flag=fn(arr[i],i);
            if(!flag){
                return false;
                break;
            }
        }
        return true;
    }

    filter封装:

    Array.prototype.filter=function(fn){
        var arr=this;
        var newArr=[];
        for(var i=0;i<arr.length;i++){
            var flag=fn(arr[i],i);
            if(flag) newArr.push(arr[i])
        }
        return newArr;
    }

    如何使用:

    var arr=[1,2,3,4];
    
    var flag=arr.some(function(item,index){
        return item>2;
    });
    
    console.log(flag);
    
    var newArr=arr.map(function(item,index){
        return item*2;
    });
    
    console.log(newArr);
    
    //  依次类推
  • 相关阅读:
    Mybatis在oracle批量更新
    WebService小记
    java基本排序
    ant使用
    python 集合
    amazon-aws 使用 SNS 发送短信
    Html5+ 开发APP 后台运行代码
    CentOS7 -防火墙
    java 模拟表单方式提交上传文件
    修改pom项目版本 jenkins 关联 shell命令
  • 原文地址:https://www.cnblogs.com/qietu/p/11961358.html
Copyright © 2011-2022 走看看