gpt4 book ai didi

javascript - 在javascript中使用过滤器时获取项目索引

转载 作者:行者123 更新时间:2023-12-02 14:00:12 27 4
gpt4 key购买 nike

我使用此代码来获取与特定关键字匹配的项目。

var match_data = function(search_str, items) {
var reg = new RegExp(search_str.split('').join('\\w*').replace(/\W/, ""), 'i');
return items.filter(function(item_data) {
if (item_data.match(reg)) {
return item_data;
}
});
};

有什么方法可以获取匹配项的索引吗?

此外,当我的搜索字符串中任何位置包含 \ 时,我都会收到此警告:

未捕获的语法错误:无效的正则表达式:/iw*m\w*\/:\位于模式末尾(...)

你们能帮我解决这个错误吗?

提前致谢。

最佳答案

您可以使用另一个数组和 Array#filter 回调 API 中的索引.

var match_data = function(search_str, items) {
var reg = new RegExp(search_str.split('').join('\\w*').replace(/\W/, ""), 'i'),
indices = [];

return {
result: items.filter(function(item_data, index) {
if (item_data.match(reg)) {
indices.push(index);
return true;
}
}),
indices: indices
};
};

关于javascript - 在javascript中使用过滤器时获取项目索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40448037/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com