SORU
29 Mart 2012, PERŞEMBE


Javascript nesne kaldırmak için yinelenen alt Çizgi

Bu tür bir dizi var:

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

Bunun için filtre etmek istiyorum:

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

_Kullanmaya çalıştım.özgün, ama çünkü sanırım { "": "1" } Kendisine eşit değildir, işe yaramaz. Fonksiyon eşittir bir geçersiz alt çizgi ile özgün sağlamak için herhangi bir yolu var mı?

CEVAP
13 Temmuz 2012, Cuma


./ özgün.benzersiz bir geri kabul eder

var list = [{a:1,b:5},{a:1,c:5},{a:2},{a:3},{a:4},{a:3},{a:2}];

var uniqueList = _.uniq(list, function(item, key, a) { 
    return item.a;
});

// uniqueList = [Object {a=1, b=5}, Object {a=2}, Object {a=3}, Object {a=4}]

Notlar:

  1. Geri dönüş değeri karşılaştırma için kullanılır
  2. İlk karşılaştırma benzersiz dönüş değeri benzersiz olarak kullanılan nesne
  3. underscorejs.org hayır geri arama kullanımını gösterir
  4. lodash.com kullanımını gösterir

Başka bir örnek : using the callback to extract car makes, colors from a list

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Jonnyriddlin1

    Jonnyriddlin

    4 Ocak 2007
  • ShotgunSandwichENT

    ShotgunSandw

    3 EKİM 2012
  • tatermoog

    tatermoog

    2 AĞUSTOS 2006