Rumah > hujung hadapan web > tutorial js > Kaedah pengisihan tatasusunan tersuai JavaScript_kemahiran javascript

Kaedah pengisihan tatasusunan tersuai JavaScript_kemahiran javascript

WBOY
Lepaskan: 2016-05-16 16:14:15
asal
1506 orang telah melayarinya

Contoh dalam artikel ini menerangkan kaedah pengisihan tatasusunan tersuai JavaScript. Kongsikan dengan semua orang untuk rujukan anda. Analisis khusus adalah seperti berikut:

Array mempunyai fungsi pengisihan sendiri, yang lebih mudah digunakan Satu perkara yang kita mesti jelas ialah asas untuk pengisihan Jika isihan tidak lulus dalam parameter, ia akan diisih mengikut susunan pengekodan aksara (. Pengekodan Unikod).

var a=["3","2","1"]; 
console.log(a[0].charCodeAt(0)); // 51 
console.log(a[1].charCodeAt(0)); // 50 
console.log(a[2].charCodeAt(0)); // 49 
console.log(a.sort());      // ["1", "2", "3"] 
 
var a=["3","你","他"]; 
console.log(a[0].charCodeAt(0)); // 51 
console.log(a[1].charCodeAt(0)); // 20320 
console.log(a[2].charCodeAt(0)); // 20182 
console.log(a.sort());      // ["3", "他", "你"] 
 
var a=["3","11","222"]; 
console.log(a.sort());// ["11", "222", "3"]  
           // 多个字符的时候按照第一个字符的编码
Salin selepas log masuk

Tetapi saya rasa perkara yang paling berguna tentang isihan ialah anda boleh menyesuaikan pengisihan Ini juga biasa dalam aplikasi praktikal, seperti menyusun tatasusunan objek. Sebagai contoh, jika anda ingin mengisih tatasusunan objek dalam satah linear mengikut medan tertentu di dalamnya, sudah tentu anda juga boleh menulis fungsi untuk melengkapkannya, tetapi saya fikir ia tidak semudah jenis.

var list = [ 
  { 
    max:3, 
    avg:2, 
    min:1 
  }, 
  { 
    max:10, 
    avg:15, 
    min:20 
  }, 
  { 
    max:8, 
    avg:5, 
    min:2 
  } 
]; 
// 根据max字段对list对象进行排序,从小到大的顺序 
// x,y就是要比较的数组的单个元素,这里就是list中的一个元素 
// 排序方法主要是要提供一个比较大小的规则,换句话说也就是要说明谁大谁小 
// 返回值为true or false 
function sortByField(x, y) { 
  return x.max - y.max; 
} 
console.log(list.sort(sortByField));
Salin selepas log masuk

Kesan operasi adalah seperti yang ditunjukkan di bawah:

Saya harap artikel ini akan membantu reka bentuk pengaturcaraan JavaScript semua orang.

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan