Sort

Metode sort mengurutkan elemen-elemen dalam array dalam urutan tertentu (menaik atau menurun). Secara default, metode sort mengurutkan elemen-elemen sebagai string dan menyusunnya dalam urutan naik berdasarkan nilai unit kode UTF-16 mereka. Berikut adalah sintaks penggunaan sort:

array.sort([compareFunction]);

Argumen compareFunction bersifat opsional dan menentukan sebuah fungsi yang mendefinisikan urutan pengurutan. Jika diabaikan, elemen-elemen diurutkan dalam urutan naik berdasarkan representasi string mereka.

Sebagai contoh:

let city = ["California", "Barcelona", "Paris", "Kathmandu"];
let sortedCity = city.sort();

console.log(sortedCity);

// Hasil: ['Barcelona', 'California', 'Kathmandu', 'Paris']

Angka dapat diurutkan dengan tidak benar ketika diurutkan sebagai string. Sebagai contoh, "35" lebih besar dari "100" karena "3" lebih besar dari "1".

Untuk mengatasi masalah pengurutan dalam angka, fungsi perbandingan digunakan. Fungsi perbandingan mendefinisikan urutan pengurutan dan mengembalikan nilai negatif, nol, atau positif berdasarkan argumen, seperti ini:

  • Nilai negatif jika a harus diurutkan sebelum b.
  • Nilai positif jika a harus diurutkan setelah b.
  • 0 jika a dan b sama dan urutan mereka tidak masalah.
const points = [40, 100, 1, 5, 25, 10];
points.sort((a, b) => {
  return a - b;
});

// Hasil: [1, 5, 10, 25, 40, 100]

Metode sort() mengganti array asli.

results matching ""

    No results matching ""