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

  • Boiler Room

    Boiler Room

    10 Mayıs 2012
  • Megan Parken

    Megan Parken

    19 Temmuz 2009
  • Peter Sharp

    Peter Sharp

    11 ŞUBAT 2013