JS filter()模糊查询,过滤

filter() 方法创建给定数组一部分的浅拷贝,其包含通过所提供函数实现的测试的所有元素。

  • 示例1:过滤出非0并且有效id
 const arr = [
    { id: 15 },
    { id: -1 },
    { id: 0 },
    { id: 3 },
    { id: 12.2 },
    {},
    { id: null },
    { id: NaN },
    { id: "undefined" },
];

const newArr = arr.filter((item) => {
    return Number.isFinite(item.id) && item.id !== 0
})

console.log(newArr)   //  [{id: 15},{id: -1},{id: 3},{id: 12.2}]
  • 示例2:根据搜索条件模糊(查询)筛选数组项
 const fruits = ["apple", "banana", "grapes", "mango", "orange"];
 
 // arr:需要过滤的数组, searchKey:过滤关键字
 function filterItems(arr, searchKey) {
     return arr.filter((el) => el.toLowerCase().includes(searchKey.toLowerCase()))
 }
 console.log(filterItems(fruits, "ap")); // ['apple', 'grapes']
 console.log(filterItems(fruits, "an")); // ['banana', 'mango', 'orange']
  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JavaScript中,filter方法可以用于对数组进行筛选和过滤。它接受一个回调函数作为参数,对数组中的每个元素进行判断,并返回符合条件的元素组成的新数组。 在引用中的代码示例中,使用正则表达式来实现模糊查询功能。该示例定义了一个search函数,接受一个关键字作为参数。通过创建一个RegExp对象,不区分大小写地匹配关键字,然后使用filter方法对数据进行过滤,返回包含关键字的名称、位置和年龄的元素组成的新数组。 在引用和中的示例中,filter方法也被用于数组过滤。在的示例中,通过filter方法筛选出数组中大于3的元素,并将符合条件的元素存储在newArr数组中。在的示例中,使用filter方法根据过滤条件从数组中筛选出符合要求的元素。 因此,通过使用filter方法可以实现对数组进行模糊查询的功能。你可以使用filter方法结合适当的条件来实现自己的模糊查询需求。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [js根据数据关键字实现模糊查询功能](https://blog.csdn.net/dyk11111/article/details/129816197)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [第八篇 filter过滤 - 模糊查询](https://blog.csdn.net/weixin_52203618/article/details/126512599)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值