SORU
27 Aralık 2012, PERŞEMBE


Boş özellikleri underscore.js ile Nesne falsy değerleri / Kaldır

Çeşitli özellikleri ile bir nesne var. Falsy değerleri olan herhangi bir özellikleri kaldırmak istiyorum.

Bu diziler compact ile elde edilebilir, ama nesneler ne olacak?

CEVAP
10 EKİM 2014, Cuma


Çizgi beri sürüm 1.7.0, _.pick kullanabilirsiniz:

_.pick(sourceObj, _.identity)

Açıklama

_.pick ikinci parametre seçme değerleri için yüklem bir işlev olabilir. Değerleri yüklem verirtruthytoplanır ve yüklem değerleri döndürürfalsyyok sayılır.

seç_.seç (, *anahtarları nesne)

Bu bir kopyasını döndürürnesnesadece beyaz listeye değerleri için filtreanahtarları(ya da geçerli anahtarlar dizisi). Alternatif olarak kabul eder, bir yüklem hangisini seçeceğimi gösteren.

_.identity ayrıca truthy değerleri seçer yüklem bir fonksiyonu olarak çalışır anlamına gelir ve falsy olanları reddeden ilk bağımsız değişken döndürür bir yardımcı işlevdir. Kütüphanede ayrıca diğer doğrulamaları bir grup ile birlikte alt Çizgi, örneğin _.pick(sourceObj, _.isBoolean) sadece boolean özelliklerini taşımaya devam eder.

Eğer bu teknik bir çok kullanırsanız, biraz daha etkileyici yapmak isteyebilirsiniz:

var pickNonfalsy = _.partial(_.pick, _, _.identity); // Place this in a library module or something
pickNonfalsy(sourceObj);

Alt sürüm 1.6.0 de _.pick sağlanan, ama bir beyaz yerine yüklem işlevleri kabul etmedi.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BrandonHarrisWalker

    BrandonHarri

    27 Kasım 2006
  • Gee Cee

    Gee Cee

    1 AĞUSTOS 2009
  • PlugResearch

    PlugResearch

    22 Mart 2006