sort dan Jebakan Urutannya
sort mengurutkan array di tempat — array aslinya ikut berubah, jadi salin dulu dengan spread bila kamu masih membutuhkan urutan semula. Jebakan terbesarnya: tanpa fungsi pembanding, sort mengubah setiap elemen menjadi string lalu mengurutkannya secara alfabet, sehingga [10, 9, 1] menjadi [1, 10, 9] dan terlihat seperti bug padahal itu perilaku resminya. Untuk angka, berikan pembanding (a, b) => a - b yang berarti naik, atau b - a untuk turun. Untuk teks berbahasa Indonesia, localeCompare menangani huruf besar-kecil dan aksen jauh lebih baik daripada perbandingan biasa.
👀 Contoh dulu
const angka = [10, 9, 1]; console.log([...angka].sort()); // alfabet, bukan angka console.log([...angka].sort((a, b) => a - b)); // benar
Hasilnya: [1,10,9] [1,9,10]
📝 Sekarang giliranmu
Array harga berisi angka. Buat const urut berisi salinan yang terurut dari termurah ke termahal, tanpa mengubah array harga aslinya, lalu cetak keduanya.