1

複数の値と照合する必要があるクエリがあります。_.where メソッドは非常に近いです:

_where ドキュメントは次のとおりです。

where_.where(list, properties) リスト内の各値を調べて、プロパティにリストされているすべてのキーと値のペアを含むすべての値の配列を返します。

 _.where(listOfPlays, {author: "Shakespeare", year: 1611});
 => [{title: "Cymbeline", author: "Shakespeare", year: 1611},
     {title: "The Tempest", author: "Shakespeare", year: 1611}]

.whereAny メソッドが必要です:

_.whereAny(listOfMovies, {director: "Tarantino", director: "Scorcese"});
=>[{title: "Pulp Fiction", director: "Tarantino", year:1996},{title:"Taxi", director: "Scorcese", year:1983}]

指定されたキーと値のペアのいずれかに一致するオブジェクトの配列を返す場所。この方法がありませんか、それとも簡単な方法はありますか?

どうもありがとう!

より詳細な説明 - オブジェクトの大きなリストを 3 つのチェックボックスでフィルタリングしようとしています。元のデータ セットの各項目には、これら 3 つの値のいずれかに対応するプロパティがあります。チェックボックス 1 (値: 赤) を選択すると、キー値 = 赤の項目のみを含む元のデータ セットのサブセットが取得されます。チェックボックス 2 (値:オレンジ) も選択した場合は、これらの値の両方を照会する必要があります。

4

1 に答える 1

3

http://underscorejs.org/#filterを使用できます。

_.filter(listOfMovies, function(movie) { return movie.director == 'Tarantino' || movie.director == 'Scorcese'; }); 
于 2013-04-04T19:50:07.493 に答える