2

次のようなオブジェクトの配列を取得します。

var collection = [
  {
    name: 'hello',
    color: 'blue'
  },
  {
    name: 'world',
    color: 'brown'
  }, .... {thousands more}
];

アンダースコアを使用して、配列内のオブジェクトのいずれかが正規表現に等しい「名前」キーの値を持っているかどうかを調べる適切な方法は何でしょうか?

_.contains(collection, '/goodbye/i'); <-- this won't work ->

検索に「名前」キーを使用するように指示する方法は?

4

1 に答える 1

11

あなたがすることができます:

filter = function (collection, key, regex) {
    return _.filter(collection, function(obj){ return obj[key].match(regex);});
};
于 2012-10-24T20:04:47.357 に答える