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

  • GenTechPC

    GenTechPC

    1 Temmuz 2007
  • Manuel Vizcaino

    Manuel Vizca

    27 Mayıs 2008
  • TheFlightsuit

    TheFlightsui

    22 HAZİRAN 2009