登录  /  注册
首页 > web前端 > js教程 > 正文

关于js数组filter的用法

不言
发布: 2018-07-14 17:15:40
原创
5109人浏览过

这篇文章主要介绍了关于js 数组filter 方法的使用,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

filter()方法使用指定的函数测试所有元素,并创建一个包含所有通过测试的元素的新数组。

filter()基本语法:
        arr.filter(callback[, thisArg])

filter()参数介绍:
        参数名    说明
        callback   用来测试数组的每个元素的函数。调用时使用参数 (element, index, array)
        返回true表示保留该元素(通过测试),false则不保留。
        thisArg    可选。执行 callback 时的用于 this 的值。

filter()用法说明:

        filter 为数组中的每个元素调用一次 callback 函数,并利用所有使得 callback 返回 true 或 等价于 true 的值 的元素创建一个新数组。
        callback 只会在已经赋值的索引上被调用,对于那些已经被删除或者从未被赋值的索引不会被调用。那些没有通过 callback 测试的元素会被跳过,不会被包含在新数组中。

        callback 被调用时传入三个参数:

        元素的值
        元素的索引
        被遍历的数组
        如果为 filter 提供一个 thisArg 参数,则它会被作为 callback 被调用时的 this 值。否则,callback 的this 值在非严格模式下将是全局对象,严格模式下为 undefined。

        filter 不会改变原数组。

        filter 遍历的元素范围在第一次调用 callback 之前就已经确定了。在调用 filter 之后被添加到数组中的元素不会被 filter 遍历到。
        如果已经存在的元素被改变了,则他们传入 callback 的值是 filter 遍历到它们那一刻的值。被删除或从来未被赋值的元素不会被遍历到。
登录后复制

例子1-- 过滤小于10 的值;

 function isBigEnough(element) {   
    return element >= 10;
 }
 var filtered = [12, 5, 8, 130, 44].filter(isBigEnough);
登录后复制

例子2-- 过滤对象中的数据; 多用于筛选功能;

    var arr = [
      {
        name: '小米',
        code: '01'
      },
      {
        name: "小米米",
        code: '02'
      },
      {
        name: "小明",
        code: '03'
      },
      {
        name: "大明",
        code: '"04"'
      }
    ]
    var newArr = arr.filter((v) => { return v.name.includes('明') })
    console.log(newArr);  //         {
                          //         name: "小明",
                          //          code: '03'
                          //         },
                          //         {
                          //          name: "大明",
                          //          code: '"04"'
                          //         }
登录后复制

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网! 

 相关推荐:

对于jQuery中$符号的作用的分析

对js中宿主对象的解析

以上就是关于js数组filter的用法的详细内容,更多请关注php中文网其它相关文章!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号