3

アンダースコアの一意の関数を使用しようとしていますが、機能させることができませんでした。これが私のテスト コードです。

var foo = [ { "a" : "1" }, { "b" : "2" }, { "a" : "1" } ];

_.unique(foo,  function(item, k, v){
    return item.a;
});
console.log(foo);

_.unique(foo, 'a');
console.log(foo);

ここで参照されているように: Javascript のアンダースコアを使用して重複オブジェクトを削除し、テスト コードはここにあります: http://jsfiddle.net/bingjie2680/wDvpM/2/、どちらも 3 つのオブジェクトを出力します。私は問題を理解できませんでした。誰か助けてもらえますか? どうもありがとう。

4

1 に答える 1

6

uniq新しい配列を返します。また、2 番目の引数を省略すると、関数はそれを好まないようです。

これは機能します:

var foo2 = _.unique(foo, false, function(item, k, v){
    return item.a;
});

デモンストレーション

于 2013-03-30T12:16:35.580 に答える