JavaScript中filter的用法

前言

开发完的一个项目里面的历年数据由于之前想法逻辑的问题,导致页面数据加载速度特别的慢。

由于这个模块后台数据也没有保存,所有只能前端进行操作隐藏。

我当时还是使用的bootstrap table的框架,所以改起来更是麻烦。

优化前页面加载速度差不多十秒出头,优化后3秒左右。

优化用到了filter。直接filter()的用法。

一、filter是什么?

        filter()方法是创建一个新的数组,其包含通过所提供函数实现的测试的所以元素。

二、使用步骤

1.语法

var _filter = arr.filter(v,i,arr);//参数一:元素的值;参数二:索引下标;参数三:被遍历的数组

2、例子

        找出大于5的元素。这只是如何使用,如果你想多个地方使用,可以使用下面的prototypr

function myFilter(context){
    return context > 5;
}
var _filter = [11,2,31,4,22,15,9].filter(myFilter);

3、Array.prototype.filter()方法

        Array.prototype.myFilter = function(fn){
            if(!Array.isArray(this)){
                throw new typeError("type Error!");
            }
            var len = this.length,arrList=[];
            for(let i=0;i<len;i++){
                if(fn(this[i],i,this)){
                    arrList.push(this[i]);
                }
            }
            return arrList;
        }

总结

学无止境,遇事不慌,最后你会发现没有那么难!

来源url
栏目