SORU
7 Mayıs 2013, Salı


Alt çizgi: () sortBy birden fazla özelliklere göre

Nesneleri birden fazla özelliklerine dayanan bir dizi sıralamak için çalışıyorum. İlk özniteliği I. e ikinci bir öznitelik iki nesne comapare için kullanılmalı arasında iki aynı nesneleri. Örneğin, aşağıdaki dizi düşünün:

var patients = [
             [{name: 'John', roomNumber: 1, bedNumber: 1}],
             [{name: 'Lisa', roomNumber: 1, bedNumber: 2}],
             [{name: 'Chris', roomNumber: 2, bedNumber: 1}],
             [{name: 'Omar', roomNumber: 3, bedNumber: 1}]
               ];

roomNumber Bu sıralama aşağıdaki kodu kullanmam nitelik:

var sortedArray = _.sortBy(patients, function(patient) {
    return patient[0].roomNumber;
});

Bu iyi çalışıyor, ama ne kadar devam ederim '' ve 'Lisa' doğru sıralanır? John

CEVAP
15 AĞUSTOS 2013, PERŞEMBE


sortBy istikrarlı bir çeşit algoritma ikinci özellik ilk sıralama, yeniden sıralama bu şekilde ilk özellik o zaman, sen-meli muktedir öyle diyor:

var sortedArray = _(patients).chain().sortBy(function(patient) {
    return patient[0].name;
}).sortBy(function(patient) {
    return patient[1].roomNumber;
}).value();

Ne zaman ikinci sortBy bulan John ve Lisa aynı oda numarası o-ecek almak onları sırasını buldum onları, ilk sortBy ayarlamak için "Lisa, John".

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bryan Smith

    Bryan Smith

    12 Mart 2006
  • FailArmy U

    FailArmy U

    29 AĞUSTOS 2009
  • Garrett Müller

    Garrett Mül

    26 HAZİRAN 2009