我正在尝试创建一个搜索功能,构建如下:
function Search(array, key, query, target){
var search_string = new RegExp(query, "i");
var filtered_list = $.grep(array, function (value, index) {
return (value.key.search(search_string) !=-1);
});
$(target).empty();
$.each(filtered_list, printListItem);
}
问题在于key
andtarget
变量。我不知道如何声明它们以便它们可以在value.key.search
and中使用$(target).empty();
。如果我将它们声明为字符串,它就不起作用。例如:
var array = [{'name': 'ben'}, {'name':'kit'}];
var query = $(this).val();
var key = "name";
var target = "div#recipes";
Search(array, key, query, target);
这并不让我感到惊讶......但我想知道我应该如何抽象函数,包括键和目标值。谢谢!