当前位置:首页 > JavaScript

js筛选功能的实现

2026-03-01 07:22:07JavaScript

实现 JavaScript 筛选功能的方法

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

const items = [1, 2, 3, 4, 5];
const filteredItems = items.filter(item => item > 3);
console.log(filteredItems); // 输出 [4, 5]

方法二:基于输入框动态筛选
结合输入框事件监听,实现动态筛选功能。

const input = document.querySelector('input');
const items = ['apple', 'banana', 'orange'];

input.addEventListener('input', (e) => {
  const filtered = items.filter(item => 
    item.toLowerCase().includes(e.target.value.toLowerCase())
  );
  console.log(filtered);
});

方法三:多条件筛选
通过组合多个条件实现复杂筛选逻辑。

const products = [
  { name: 'Laptop', price: 1000, category: 'electronics' },
  { name: 'Shirt', price: 20, category: 'clothing' }
];

const filtered = products.filter(product => 
  product.price < 50 && product.category === 'clothing'
);
console.log(filtered); // 输出 { name: 'Shirt', ... }

方法四:使用正则表达式筛选
通过正则表达式匹配更灵活的文本模式。

const words = ['hello', 'world', 'javascript'];
const regex = /^j/;
const filtered = words.filter(word => regex.test(word));
console.log(filtered); // 输出 ['javascript']

方法五:结合 DOM 操作实现界面筛选
动态更新 DOM 元素以显示筛选结果。

js筛选功能的实现

const listItems = document.querySelectorAll('li');
const searchInput = document.querySelector('input');

searchInput.addEventListener('input', (e) => {
  const searchTerm = e.target.value.toLowerCase();
  listItems.forEach(item => {
    const text = item.textContent.toLowerCase();
    item.style.display = text.includes(searchTerm) ? 'block' : 'none';
  });
});

注意事项

  • 性能优化:大数据量时考虑使用防抖(debounce)减少频繁触发筛选。
  • 大小写敏感:统一转换为小写或大写避免大小写问题。
  • 空值处理:检查输入是否为空,避免无意义的筛选操作。

标签: 功能js
分享给朋友:

相关文章

js实现验证码

js实现验证码

使用Canvas生成图形验证码 在HTML中创建一个Canvas元素用于绘制验证码。通过JavaScript随机生成数字或字母组合,并添加干扰线、噪点等干扰元素增强安全性。 <canvas i…

js实现全屏

js实现全屏

实现全屏的基本方法 使用JavaScript实现全屏功能主要依赖Element.requestFullscreen()方法。现代浏览器均支持此API,但不同浏览器可能需要添加前缀。 // 触发全屏…

php实现留言板功能

php实现留言板功能

PHP 留言板功能实现 数据库设计 创建数据库表 messages,包含以下字段: id:自增主键 name:留言者姓名(VARCHAR) email:留言者邮箱(VARCHAR) content:…

js实现列表

js实现列表

使用 JavaScript 实现列表 JavaScript 提供了多种方式来实现列表功能,包括数组操作、DOM 元素动态生成等。以下是几种常见的实现方法: 使用数组存储列表数据 数组是 JavaSc…

js 实现分页

js 实现分页

实现分页的基本逻辑 分页功能通常需要后端返回数据总量或总页数,前端根据当前页码和每页条数截取对应数据。以下是一个基于JavaScript的简单分页实现方案: 前端分页实现 假设已有从后端获取的完整数…

h5实现点击复制功能

h5实现点击复制功能

使用document.execCommand方法(兼容旧浏览器) 通过document.execCommand('copy')实现复制功能,需先选中文本内容。创建一个隐藏的textarea或input…