我正在使用此代码来获取与特定关键字匹配的项目。
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;
}
});
};
有没有办法可以获得匹配项目的索引?
当我的搜索字符串在其中的任何位置包含\
时,我也会不断收到此警告:
Uncaught SyntaxError: Invalid regular expression: /iw*m\w*\/: \ at end of pattern(…)
你们能帮助我解决这个错误。
提前致谢。
答案 0 :(得分:2)
您可以使用另一个数组和Array#filter
的回调API中的索引。
var cards = document.getElementsByClassName('card');
for (var i = 0; i < cards.length; i++) {
cards[i].onclick = function(target) {
this.innerHTML = 'up';
}
}