专注Java教育14年 全国咨询/投诉热线:400-8080-105
动力节点LOGO图
始于2009,口口相传的Java黄埔军校
首页 hot资讯 JavaScript数组Filter方法

JavaScript数组Filter方法

更新时间:2022-02-07 10:31:48 来源:动力节点 浏览1274次

想要学习JavaScript数组Filter方法,首先来看下Array filter()方法的示例。

例子:

<script>
    // JavaScript to illustrate findIndex() method
    function canVote(age) {
        return age >= 18;
    }  
    function func() {
        var filtered = [24, 33, 16, 40].filter(canVote);
        document.write(filtered);
    }
    func();
</script>     

输出:

[24,33,40]

arr.filter ()方法用于从给定数组创建一个新数组,该数组仅由给定数组中满足参数方法设置的条件的元素组成。

句法:

array.filter(回调(元素,索引,arr),thisValue)

参数:此方法接受上述五个参数,如下所述:

callback:此参数保存要为数组的每个元素调用的函数。

element:参数保存当前正在处理的元素的值。

index:该参数是可选的,它保存从0开始的数组中currentValue元素的索引。

arr:此参数是可选的,它保存了调用 Array.every 的完整数组。

thisValue:此参数是可选的,它保存要作为 this 传递的上下文,以便在执行回调函数时使用。如果传递了上下文,那么每次调用回调函数时都会这样使用,否则默认使用 undefined。

返回值:此方法返回一个新数组,该数组仅由满足arg_function条件的元素组成。

下面的示例说明了JavaScript 中的arr.filter()方法:

示例 1:在此示例中,方法filter()创建了一个新数组,该数组仅由满足isPositive()函数检查的条件的元素组成。

函数isPositive(值){
  返回值 > 0;
}
var 过滤 = [112, 52, 0, -1, 944].filter(isPositive);
打印(过滤);

输出:

[112,52,944]

示例 2:在此示例中,方法filter()创建了一个新数组,该数组仅包含满足isPositive()函数检查的条件的元素。

函数是偶数(值){
  返回值 % 2 == 0;
}
var 过滤 = [11, 98, 31, 23, 944].filter(isEven);
打印(过滤);

输出:

[98,944]

上述方法的代码定义如下:

程序1:

<script>
    // JavaScript to illustrate filter() method
    function isPositive(value) {
        return value > 0;
    }  
    function func() {
        var filtered = [112, 52, 0, -1, 944].filter(isPositive);
        document.write(filtered);
    }
    func();
</script>

输出:

[112,52,944]

方案二:

<script>
    // JavaScript to illustrate filter() method
    function isEven(value) {
        return value % 2 == 0;
    }  
    function func() {
        var filtered = [11, 98, 31, 23, 944].filter(isEven);
        document.write(filtered);
    }
    func();
</script>

输出:

[98,944]

支持的浏览器:JavaScript Array filter()方法支持的浏览器如下:

谷歌浏览器

微软边缘 9.0

火狐浏览器 1.5

苹果浏览器

歌剧

以上就是关于“JavaScript数组Filter方法”的介绍,大家如果想了解更多相关知识,不妨来关注一下动力节点的Filter教程,里面的课程内容细致全面,通俗易懂,比较适合没有基础的小伙伴学习,希望对大家能够有所帮助。

提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>