JavaScriptの特定の問題を解決するための擬似コードがありますコードに変換する方法で私の頭をラップする:純粋なJavaScriptを使用すると、オブジェクトのコレクションとフィルタオブジェクトがある場合、フィルタオブジェクトと同じキーと値のペアを持つコレクション内のオブジェクトを返します
var sampleCollection = [
{ 'a': 1, 'b': 2, 'c': 3 },
{ 'a': 4, 'b': 5, 'c': 6 }
];
var sampleFilter = { 'a': 4, 'c': 6 };
function getCollectionFilter(collection,filter) {
function collectionFilter(collection,filter) {
//return if for each element in filter,
//collection's key/value pair is same with filter's key/value pair
}
return collection.filter(collectionFilter);
}
getCollectionFilter(sampleCollection,sampleFilter);
// -> { 'a': 4, 'b': 5, 'c': 6};
私はlodashはこれを解決する_.matchesを持っていると思うが、私は物事が特定の方法で行われている理由を知りたいとの意味は何ですか/そうでなければ結果。ソリューション/練習は "最高"
なぜフィルタは 'b ':5'を返すのでしょうか? – Aeolingamenfel
@ aeingingamenfelなぜなら 'a'と' c'の値が一致しているからです。 – Pureferret
ああ、私はフィルターの仕組みを誤解していました。 – Aeolingamenfel