データベース サーバーに渡す関数を作成する必要があります。返された関数は、1 つの項目をパラメーターとして取り、その項目を要件のリストと比較します。
このためには、引数として配列を取り、その配列が組み込まれている内部関数を返す関数生成関数が必要です。
次に例を示します。
function create_query (list_of_requirements) {
return function (item) {
var is_match = true
// the next function sets is_match to false if the item fails
list_of_requirements.forEach(check_if_item_meets_requirement)
return is_match
}
}
これを使用する例:
function search (parsed_user_string) {
db.get(create_query(parsed_user_string)).then(function(results){
show_results(results)
})
}
要件のリストを内部関数に組み込むにはどうすればよいですか?