0

次のように、ネストされたオブジェクトでクエリを実行できるようにするフィルター関数を作成する必要があります。

var data = [
             { twitter: { id: 1, name: "Bob" } },
             { twitter: { id: 2, name: "Jones" } }
           ],
    query = { 'twitter.id': 1 };

# Perform filter using data and query variables
var search = …

console.log(search);
> ["0"]

フィルターは、クエリに一致するインデックスの配列を返す必要があります。

私は現在、 http://jsbin.com/umeros/2/editでネストされたオブジェクトのサポートなしでこれを機能させています。

ただし、上記のようなネストされたオブジェクトを照会できるようにしたいと考えていますquery

4

1 に答える 1

1

この回答の関数を使用するrefと、フィルターは次のようになります。

var search = _.filter(_.keys(data), function (key) {
    var obj = data[key];
    return _.every(query, function (val, queryKey) {
        return ref(obj, queryKey) === val;
    });
});
于 2013-02-24T21:30:35.180 に答える