javascript - 更改 JavaScript 过滤器以过滤值是否包含/包含值
问题描述
目前,这会过滤到特定的类别名称。我希望它过滤它是否包含在字符串中。
换句话说,如果它选择了“暴风雨”,我希望过滤器返回“暴风雨”。(目前,如果它过滤的类别是'rainstorm',它只会返回'rainstorm')
function showCategory(category) {
this.title = category;
let filteredProducts = this.products.filter(product => {
return product.category == category;
});
drawProducts(filteredProducts);
}
解决方案
尝试使用 indexOf 方法进行过滤,例如此示例
const categories = ["cats","dogs","cars","doors"]
function showCategory(category) {
this.title = category;
let filteredProducts = categories.filter(product => {
return product.indexOf(category) !== -1;
});
return filteredProducts
}
console.log(showCategory("ca"))
推荐阅读
- java - 如何远程降级设备上的apk?
- c - 有没有办法使用低级输出输出 ANSI 转义序列?
- reactjs - 平滑的 window.scrollBy() 在 ios 中效果不佳,它使跳转不滚动
- gtk - GTK+ 帮助程序
- vagrant - Vagrant 不运行内联 shell 脚本来安装包
- javascript - Div 被克隆多次而不是所需的数量
- swift - 在不使用 Storyboard 的情况下从 NSWindowController 呈现模式
- c# - 当我使用向上和向下箭头键移动对象时,如何使另一个对象沿着 x 轴移动?
- c# - 通过前端应用程序和 postman/curl 从发布在 Azure App Service 中的 .net core api 获得不同的响应
- c - 分而治之递归算法的复杂性