当前位置:首页 > 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 元素以显示筛选结果。

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实现拖拽

js实现拖拽

实现拖拽的基本步骤 使用JavaScript实现拖拽功能需要监听鼠标事件,包括mousedown、mousemove和mouseup。以下是实现的基本逻辑: const draggableEleme…

vue实现产品使用功能

vue实现产品使用功能

Vue 实现产品功能的关键方法 组件化开发 使用Vue的单文件组件(.vue)将产品功能模块化,每个功能拆分为独立组件。例如产品列表、详情页、购物车等可分别封装为ProductList.vue、Pro…

php实现打印功能

php实现打印功能

PHP 实现打印功能的方法 PHP 可以通过多种方式实现打印功能,具体取决于打印的目标(如打印机、PDF、网页等)和需求(如直接打印、生成打印预览等)。以下是几种常见的实现方式: 使用 JavaSc…

js实现打印

js实现打印

使用window.print()方法实现打印 在JavaScript中,可以通过调用window.print()方法直接触发浏览器的打印功能。这会打开系统的打印对话框,用户可以选择打印机和设置打印选项…

js 实现倒计时

js 实现倒计时

实现倒计时的基本方法 使用 JavaScript 实现倒计时可以通过 setInterval 或 setTimeout 结合日期计算来完成。以下是两种常见实现方式。 使用 setInterval 实…

js防抖和节流实现

js防抖和节流实现

防抖(Debounce)的实现 防抖的核心思想是在事件被触发后,延迟执行回调函数。如果在延迟时间内再次触发事件,则重新计时。适用于输入框搜索、窗口大小调整等场景。 function debounc…