• 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);
    
    //  依次类推
  • 相关阅读:
    Symbol
    前端微信支付步骤
    获取url参数值(可解码中文值)
    HTML5--canvas与svg的使用
    js-图片img转base64格式
    echarts 地图
    echarts 水球图
    react长列表性能优化
    CSS Modules
    react路由
  • 原文地址:https://www.cnblogs.com/qietu/p/11961358.html
Copyright © 2020-2023  润新知