次の行に沿ってJavaScriptオブジェクトの配列の検索関数を作成しました。
- ユーザーがフォーム入力ボックスにテキストを入力します
- オブジェクト配列をループします
- オブジェクトテキストに入力テキストが含まれている場合は、オブジェクトを別の「フィルタリングされた」配列にプッシュします
- フィルタされた配列を表示する
これは、javascriptに組み込まれている文字列search()関数を使用して正常に機能します。
if(objectarray[i].text.search(userstring)>=0){
filteredarray.push(currentobject)
};
ここで、クライアントは次の行に沿ってより高度な検索を実行したいと考えています。
テキストに(x1またはx2)および(x3またはx4またはx5)が含まれているオブジェクトを検索する
xのそれぞれが単語であり、上記の条件が満たされたときにオブジェクトがフィルター処理されたコレクションにプッシュされる場合。
この種の複雑なブール式を処理できる組み込み関数はありますか?