EDIT: Silakan lihat jawaban Andy karena jawabannya datang lebih dulu dan ini semata-mata perpanjangan dari miliknya
Saya tahu ini adalah pertanyaan lama, tapi menurut saya itu layak untuk dimasukkan Array.prototype.sort()
.
Berikut contoh dari MDN bersama dengan tautannya
var numbers = [4, 2, 5, 1, 3];
numbers.sort(function(a, b) {
return a - b;
});
console.log(numbers);
// [1, 2, 3, 4, 5]
Untungnya, ini tidak hanya berfungsi dengan angka:
arr.sort([compareFunction])
compareFunction
Menentukan fungsi yang menentukan urutan sortir. Jika dihilangkan, larik akan diurutkan sesuai dengan nilai poin kode Unicode setiap karakter, sesuai dengan konversi string dari setiap elemen.
Saya perhatikan bahwa Anda memesannya dengan nama depan:
let playlist = [
{artist:"Herbie Hancock", title:"Thrust"},
{artist:"Lalo Schifrin", title:"Shifting Gears"},
{artist:"Faze-O", title:"Riding High"}
];
// sort by name
playlist.sort((a, b) => {
if(a.artist < b.artist) { return -1; }
if(a.artist > b.artist) { return 1; }
// else names must be equal
return 0;
});
perhatikan bahwa jika Anda ingin memesannya dengan nama belakang Anda harus memiliki kunci untuk keduanya first_name
& last_name
atau melakukan sihir regex, yang saya tidak dapat melakukan XD
Semoga membantu :)