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

  • Djbasilio AuToBaSs

    Djbasilio Au

    20 Aralık 2008
  • kimaliz

    kimaliz

    18 Temmuz 2006
  • Peyton

    Peyton

    28 Aralık 2008